sparql-examples

A set of SPARQL examples that are used in different SIB resources

View the Project on GitHub sib-swiss/sparql-examples

30_Select_all_approved_reactions_annotated_with_a_given_Pubmed_ID

rq turtle/ttl

Select all approved reactions annotated with a given Pubmed ID (2460092, and show the pubmed id in result as text, using strafter and BIND)

Use at

PREFIX rh:<http://rdf.rhea-db.org/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX pubmed:<http://rdf.ncbi.nlm.nih.gov/pubmed/>

SELECT ?reaction ?pubMedID ?reactionEquation  WHERE {
  BIND(pubmed:2460092 AS ?cit)
  ?reaction rdfs:subClassOf rh:Reaction .
  ?reaction rh:status rh:Approved .
  ?reaction rh:equation ?reactionEquation .
  ?reaction rh:citation ?cit .
  BIND(strafter(str(?cit), str(pubmed:)) AS ?pubMedID  )
}

graph TD
classDef projected fill:lightgreen;
classDef literal fill:orange;
classDef iri fill:yellow;
  v1("?cit")
  v4("?pubMedID"):::projected 
  v2("?reaction"):::projected 
  v3("?reactionEquation"):::projected 
  c4(["rh:Approved"]):::iri 
  c2(["rh:Reaction"]):::iri 
  bind0[/"'pubmed:2460092'"/]
  bind0 --as--o v1
  v2 --"rdfs:subClassOf"-->  c2
  v2 --"rh:status"-->  c4
  v2 --"rh:equation"-->  v3
  v2 --"rh:citation"-->  v1
  bind1[/"substring-after(str(?cit),str('pubmed:'))"/]
  v1 --o bind1
  bind1 --as--o v4