This is a test version of Biostars. For the public version, visit https://www.biostars.org.
How to connect uniprot and rhea?

This is a follow-up question of this one. There I learned how to retrieve certain information from uniprot. I would now like to extend the sparql query shown below in such a way that I also retrieve the associated rhea reactions for each protein, ideally:

  1. the reaction ID
  2. Its substrate and product IDs (as e.g. ChEBI identifiers) along with their stoichiometric factor and charge

If one looks at example 19 at rhea's sparql endpoint, this connection seems to be possible but I do not know how to connect the two databases. One way might be to go via the EC numbers that are retrieved; I posted a follow-up question here.

PREFIX up:<http://purl.uniprot.org/core/>
PREFIX taxon:<http://purl.uniprot.org/taxonomy/>
PREFIX rdfs:<http://www.w3.org/2000/01/rdf-schema#>

SELECT 
    ?protein 
    ?taxon 
    ?name
    ?kos
    ?ecs
WHERE
{   
    ?protein a up:Protein .
    ?protein up:reviewed true .  # have to be reviewed        
    ?taxon a up:Taxon .
    ?taxon up:scientificName ?name .
    VALUES ?taxonlist { taxon:3702  taxon:562 }
    {
        ?taxon rdfs:subClassOf ?taxonlist .
        ?protein up:organism ?taxon . 
    } UNION {
        ?protein up:organism ?taxonlist . 
    }

    {
        ?protein up:existence up:Evidence_at_Protein_Level_Existence .
    } UNION {
        ?protein up:existence up:Evidence_at_Transcript_Level_Existence .
    }
    {
       SELECT ?protein (GROUP_CONCAT(?ec; SEPARATOR=", ") AS ?ecs)
       WHERE{
           ?protein up:enzyme|((up:component|up:domain)/up:enzyme) ?ec
       } GROUP BY ?protein
    }
    OPTIONAL {
        SELECT ?protein (GROUP_CONCAT(?ko; SEPARATOR=", ") AS ?kos)
        WHERE{
            ?protein rdfs:seeAlso ?ko .
            ?ko up:database <http://purl.uniprot.org/database/KO>
        } GROUP BY ?protein
    } 
}
sparql semantic-web uniprot rhea

1 answer

The thread is old and I missed that I was tagged in a comment, sorry. If you are interested in connecting Rhea and UniProt, you may find this publication useful:

Morgat A, Lombardot T, Coudert E, Axelsen K, Neto TB, Gehant S, Bansal P, Bolleman J, Gasteiger E, de Castro E, Baratin D, Pozzato M, Xenarios I, Poux S, Redaschi N, Bridge A, UniProt Consortium. Enzyme annotation in UniProtKB using Rhea Bioinformatics (2019) https://doi.org/10.1093/bioinformatics/btz817

Also, for more interactive users or to explore URLs that can then be used programmatically: How can I search UniProt for chemical or reaction data? https://www.uniprot.org/help/chemical_data_search

Log in to answer this question.