A set of SPARQL examples that are used in different SIB resources
Proteins that are cytoplasmic with alternate O-glycosylation or phosphorylation at the same positions
PREFIX : <http://nextprot.org/rdf/>
PREFIX nextprot_cv: <http://nextprot.org/rdf/terminology/>
SELECT DISTINCT ?entry WHERE {
values ?cytoloc {nextprot_cv:SL-0086 nextprot_cv:GO_0005737} # SL and GO values for cytoplasm
?entry :isoform ?iso.
?iso :cellularComponent ?loc .
?loc :term /:childOf ?cytoloc .
filter not exists {?loc :negativeEvidence ?negev} # No negative localization evidence
?iso :modifiedResidue /:term ?ptmtype.
?iso :modifiedResidue /:start ?ptmpos.
filter (?ptmtype in (nextprot_cv:PTM-0253, nextprot_cv:PTM-0254, nextprot_cv:PTM-0255))
?iso :glycosylationSite /:start ?ptmpos.
}
graph TD
classDef projected fill:lightgreen;
classDef literal fill:orange;
classDef iri fill:yellow;
v4("?cytoloc")
v5("?entry"):::projected
v6("?iso")
v2("?loc")
v3("?negev")
v7("?ptmpos")
v1("?ptmtype")
a1((" "))
a2((" "))
a3((" "))
a4((" "))
list0c3([":terminology/PTM-0255"]):::iri
list0c1([":terminology/PTM-0253"]):::iri
list0c2([":terminology/PTM-0254"]):::iri
list0c1 --o f0
list0c2 --o f0
list0c3 --o f0
f0[[" in "]]
f0 --> v1
f1[["not "]]
subgraph f1e1["Exists Clause"]
e1v1 --":negativeEvidence"--> e1v2
e1v1("?loc"):::projected
e1v2("?negev"):::projected
end
f1--EXISTS--> f1e1
f1 --> v2
f1 --> c4
f1 --> v3
v2 --":negativeEvidence"--> v3
bind2[/VALUES ?cytoloc/]
bind2-->v4
bind20([":terminology/SL-0086"])
bind20 --> bind2
bind21([":terminology/GO_0005737"])
bind21 --> bind2
v5 --":isoform"--> v6
v6 --":cellularComponent"--> v2
v2 --":term"--> a1
a1 --":childOf"--> v4
v6 --":modifiedResidue"--> a2
a2 --":term"--> v1
v6 --":modifiedResidue"--> a3
a3 --":start"--> v7
v6 --":glycosylationSite"--> a4
a4 --":start"--> v7