A set of SPARQL examples that are used in different SIB resources
Find enzymes that have at least two transmembrane domains, whose 3D structure is elucidated through X-Ray analysis
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX up: <http://purl.uniprot.org/core/>
SELECT
?protein
WHERE {
?protein a up:Protein ;
up:annotation ?transmembrane_annotation ;
rdfs:seeAlso ?wwPDB .
{
?protein up:enzyme ?enzyme .
} UNION {
?protein up:annotation/a up:Catalytic_Activity_Annotation .
}
?wwPDB up:database <http://purl.uniprot.org/database/PDB> ;
up:method up:X-Ray_Crystallography .
?transmembrane_annotation a up:Transmembrane_Annotation .
} GROUP BY ?protein HAVING(COUNT(DISTINCT ?transmembrane_annotation ) >= 2)
graph TD
classDef projected fill:lightgreen;
classDef literal fill:orange;
classDef iri fill:yellow;
v5("?_anon_aaf95e3c346c4c97af230d5bcfeba8ab5973")
v4("?enzyme")
v1("?protein"):::projected
v2("?transmembrane_annotation")
v3("?wwPDB")
a2((" "))
a1((" "))
c11(["up:X-Ray_Crystallography"]):::iri
c9([http://purl.uniprot.org/database/PDB]):::iri
c7(["up:Catalytic_Activity_Annotation"]):::iri
c3(["up:Protein"]):::iri
c12(["up:Transmembrane_Annotation"]):::iri
f0[[" >= '2^^xsd:integer'"]]
f0 --> a1
v1 --"a"--> c3
v1 --"up:annotation"--> v2
v1 --"rdfs:seeAlso"--> v3
subgraph union0[" Union "]
subgraph union0l[" "]
style union0l fill:#abf,stroke-dasharray: 3 3;
v1 --"up:annotation"--> a2
a2 --"a"--> c7
end
subgraph union0r[" "]
style union0r fill:#abf,stroke-dasharray: 3 3;
v1 --"up:enzyme"--> v4
end
union0r <== or ==> union0l
end
v3 --"up:database"--> c9
v3 --"up:method"--> c11
v2 --"a"--> c12
bind2[/"count(?transmembrane_annotation)"/]
v2 --o bind2
bind2 --as--o v5