191_calcium_dependent_enzymes_with_binding_site

rq turtle/ttl

Find reviewed enzymes that both require Ca(2+) as a cofactor and have an annotated calcium-binding site - two distinct annotation types (a stated cofactor requirement vs. an explicit structural binding-site position) corroborating each other for the same ion. Both sides are matched by the actual ChEBI identity of calcium(2+) (CHEBI:29108), not by name text: up:cofactor points directly at the ChEBI IRI, while a binding site's up:ligand is an instance further typed via rdfs:subClassOf to the ChEBI class

Use at

PREFIX up: <http://purl.uniprot.org/core/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX CHEBI: <http://purl.obolibrary.org/obo/CHEBI_>

SELECT DISTINCT
  ?protein
WHERE {
  BIND(CHEBI:29108 AS ?calcium)
  ?protein up:reviewed true ;
    up:enzyme ?ec ;
    up:annotation ?cofactor ;
    up:annotation ?binding .
  ?cofactor a up:Cofactor_Annotation ;
    up:cofactor ?calcium .
  ?binding a up:Binding_Site_Annotation ;
    up:ligand ?ligand .
  ?ligand rdfs:subClassOf ?calcium .
}
graph TD
classDef projected fill:lightgreen;
classDef literal fill:orange;
classDef iri fill:yellow;
  v5("?binding")
  v1("?calcium")
  v4("?cofactor")
  v3("?ec")
  v6("?ligand")
  v2("?protein"):::projected 
  c8(["up:Binding_Site_Annotation"]):::iri 
  c2(["true^^xsd:boolean"]):::literal 
  c6(["up:Cofactor_Annotation"]):::iri 
  bind0[/"'CHEBI:29108'"/]
  bind0 --as--o v1
  v2 --"up:reviewed"-->  c2
  v2 --"up:enzyme"-->  v3
  v2 --"up:annotation"-->  v4
  v2 --"up:annotation"-->  v5
  v4 --"a"-->  c6
  v4 --"up:cofactor"-->  v1
  v5 --"a"-->  c8
  v5 --"up:ligand"-->  v6
  v6 --"rdfs:subClassOf"-->  v1