A set of SPARQL examples that are used in different SIB resources
Proteins that are involved in transport and located in a membrane and that are not glycosylated (experimentally or predicted)
PREFIX : <http://nextprot.org/rdf/>
PREFIX nextprot_cv: <http://nextprot.org/rdf/terminology/>
SELECT DISTINCT ?entry WHERE {
?entry :isoform ?iso .
{
?iso :goBiologicalProcess ?gofunc .
?gofunc :term / :childOf nextprot_cv:GO_0006810. # GO value for transport
filter not exists {?gofunc :negativeEvidence ?negev} # No negative function evidence
} union {
?iso :uniprotKeyword / :term nextprot_cv:KW-0813. # KW for transport
}
{
?iso :uniprotKeyword / :term nextprot_cv:KW-0812. # transmembrane
} union {
?iso :topology / :term nextprot_cv:CVTO_0004. # intramembrane
}
filter not exists { ?iso :uniprotKeyword / :term nextprot_cv:KW-0325 } # not a glycoprotein
}
graph TD
classDef projected fill:lightgreen;
classDef literal fill:orange;
classDef iri fill:yellow;
v2("?entry"):::projected
v3("?gofunc")
v1("?iso")
v4("?negev")
a2((" "))
a3((" "))
a4((" "))
a5((" "))
a1((" "))
c8([":terminology/GO_0006810"]):::iri
c3([":terminology/KW-0325"]):::iri
c12([":terminology/CVTO_0004"]):::iri
c9([":terminology/KW-0813"]):::iri
c10([":terminology/KW-0812"]):::iri
f0[["not "]]
subgraph f0e0["Exists Clause"]
e0v1 --":uniprotKeyword"--> e0a1
e0a1 --":term"--> e0c3
e0v1("?iso"):::projected
e0a1((" ")):::projected
e0c3([":terminology/KW-0325"]):::iri
end
f0--EXISTS--> f0e0
f0 --> v1
f0 --> c1
f0 --> a1
f0 --> c2
f0 --> c3
v1 --":uniprotKeyword"--> a1
a1 --":term"--> c3
v2 --":isoform"--> v1
subgraph union0[" Union "]
subgraph union0l[" "]
style union0l fill:#abf,stroke-dasharray: 3 3;
v1 --":uniprotKeyword"--> a3
a3 --":term"--> c9
end
subgraph union0r[" "]
style union0r fill:#abf,stroke-dasharray: 3 3;
f1[["not "]]
subgraph f1e1["Exists Clause"]
e1v1 --":negativeEvidence"--> e1v2
e1v1("?gofunc"):::projected
e1v2("?negev"):::projected
end
f1--EXISTS--> f1e1
f1 --> v3
f1 --> c5
f1 --> v4
v3 --":negativeEvidence"--> v4
v1 --":goBiologicalProcess"--> v3
v3 --":term"--> a2
a2 --":childOf"--> c8
end
union0r <== or ==> union0l
end
subgraph union1[" Union "]
subgraph union1l[" "]
style union1l fill:#abf,stroke-dasharray: 3 3;
v1 --":topology"--> a5
a5 --":term"--> c12
end
subgraph union1r[" "]
style union1r fill:#abf,stroke-dasharray: 3 3;
v1 --":uniprotKeyword"--> a4
a4 --":term"--> c10
end
union1r <== or ==> union1l
end