Community-curated SPARQL example queries for multiple life-science endpoints.
Same as #9 but not for DOI
PREFIX ome: <https://ld.openmicroscopy.org/core/>
PREFIX up: <http://purl.uniprot.org/core/>
PREFIX dcterms: <http://purl.org/dc/terms/>
SELECT ?id ?idrSubject ?nCurated ?nMapped WHERE {
{ SELECT DISTINCT ?id ?idrSubject WHERE {
?e ome:key "Publication DOI" ; ome:value ?v .
?ann ome:mapEntry ?e . ?idrSubject ome:hasAnnotation ?ann .
BIND(STRBEFORE(?v, " ") AS ?id)
} }
BIND(CONCAT("doi:", ?id) AS ?doiLit)
SERVICE <https://sparql.uniprot.org/sparql> {
?cit dcterms:identifier ?doiLit .
OPTIONAL { SELECT ?cit (COUNT(DISTINCT ?pc) AS ?nCurated) WHERE { ?pc a up:Protein ; up:citation ?cit } GROUP BY ?cit }
OPTIONAL { SELECT ?cit (COUNT(DISTINCT ?pm) AS ?nMapped) WHERE { ?pm a up:Protein ; up:mappedCitation ?cit } GROUP BY ?cit }
}
}
ORDER BY DESC(?nMapped)
graph TD
classDef projected fill:lightgreen;
classDef literal fill:orange;
classDef iri fill:yellow;
v4("?ann")
v8("?cit")
v7("?doiLit")
v2("?e")
v6("?id"):::projected
v5("?idrSubject"):::projected
v10("?nCurated"):::projected
v12("?nMapped"):::projected
v9("?pc")
v11("?pm")
v3("?v")
c2(["Publication DOI"]):::literal
c9(["up:Protein"]):::iri
v2 --https://ld.openmicroscopy.org/core/key--> c2
v2 --https://ld.openmicroscopy.org/core/value--> v3
v4 --https://ld.openmicroscopy.org/core/mapEntry--> v2
v5 --https://ld.openmicroscopy.org/core/hasAnnotation--> v4
bind0[/"substring-before(?v,' ')"/]
v3 --o bind0
bind0 --as--o v6
bind1[/"concat('doi:',?id)"/]
v6 --o bind1
bind1 --as--o v7
subgraph s1["https://sparql.uniprot.org/sparql"]
style s1 stroke-width:4px;
v8 --"dcterms:identifier"--> v7
subgraph optional0["(optional)"]
style optional0 fill:#bbf,stroke-dasharray: 5 5;
v9 -."a".-> c9
v9 --"up:citation"--> v8
bind3[/"count(?pc)"/]
v9 --o bind3
bind3 --as--o v10
end
subgraph optional1["(optional)"]
style optional1 fill:#bbf,stroke-dasharray: 5 5;
v11 -."a".-> c9
v11 --"up:mappedCitation"--> v8
bind5[/"count(?pm)"/]
v11 --o bind5
bind5 --as--o v12
end
end