We can list all models with the following query:
SPARQL sparql/allModels.rq (run)
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX sbd: <https://www.sbd4nano.eu/rdf/#>
PREFIX dc: <http://purl.org/dc/elements/1.1/>
PREFIX dct: <http://purl.org/dc/terms/>
SELECT ?model ?modelLabel ?provider WHERE {
?model a sbd:Model ;
dc:source ?providerRes.
OPTIONAL { ?model rdfs:label ?rdfsLabel }
BIND(COALESCE(?rdfsLabel, str(?model)) AS ?modelLabel)
?providerRes dct:title | dc:title ?provider .
} ORDER BY ?model
This gives us:
We can also list the number of models that can make some prediction for a particular material:
SPARQL sparql/modelsForNanomaterials.rq (run)
PREFIX npo: <http://purl.bioontology.org/ontology/npo#>
PREFIX obo: <http://purl.obolibrary.org/obo/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX sbd: <https://www.sbd4nano.eu/rdf/#>
PREFIX sbdbel: <https://www.sbd4nano.eu/bel/#>
PREFIX dc: <http://purl.org/dc/elements/1.1/>
PREFIX dct: <http://purl.org/dc/terms/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
SELECT ?material (SAMPLE(?material_) AS ?materialLabel) (COUNT(DISTINCT ?model) AS ?count)
WHERE {
?material rdfs:label ?material_ .
?model a sbd:Model .
{ ?model sbdbel:NP ?material . } UNION { ?model dct:subject / skos:narrower ?material . }
OPTIONAL { ?model rdfs:label ?rdfsLabel }
BIND(COALESCE(?rdfsLabel, str(?model)) AS ?modelLabel)
} GROUP BY ?material
ORDER BY DESC(?count)
This gives:
material | count |
ZnO | 50 |
R-TiO2 | 46 |
Fe2O3 | 39 |
SiO2 | 34 |
Al2O3 | 33 |
lanthanum(3+);oxygen(2-) | 32 |
oxonickel | 31 |
oxygen(2-);yttrium(3+) | 31 |
Cobalt (II) oxide nanoparticle | 30 |
indium(3+);oxygen(2-) | 30 |
chromium(3+);oxygen(2-) | 30 |
dioxotin | 30 |
dioxozirconium | 30 |
This table is truncated. See the full table at sparql/modelsForNanomaterials.rq |