https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/Head
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
http://www.nanopub.org/nschema#hasAssertion
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/assertion
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
http://www.nanopub.org/nschema#hasProvenance
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/provenance
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
http://www.nanopub.org/nschema#hasPublicationInfo
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/pubinfo
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
http://www.w3.org/1999/02/22-rdf-syntax-ns#type
http://www.nanopub.org/nschema#Nanopublication
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/assertion
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/get-key-figures
http://purl.org/dc/terms/description
Returns one row with an SVG column: a strip of key figures for the FAIR Implementation Space, showing the total number of FAIR Supporting Resources (FSRs, including FAIR-Enabling Resources), FAIR Implementation Profiles (FIPs), Reference FIPs (rFIPs), FAIR Implementation Communities (FICs) and curated FSRs. Each figure repeats the gates of the view that lists the same entities further down the page - FSRs and FIPs are counted as distinct resources, reference FIPs as the latest one per community, communities as the latest labelled declaration each, and curated FSRs as resources qualified by the GO FAIR Foundation with a key on the curators list whose qualified declaration is still the current one - so a figure cannot disagree with the list it links to. Each number is a link to the corresponding section of the space page. This is the query behind the "In numbers" SVG view.
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/get-key-figures
http://purl.org/dc/terms/license
http://www.apache.org/licenses/LICENSE-2.0
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/get-key-figures
http://www.w3.org/1999/02/22-rdf-syntax-ns#type
https://w3id.org/kpxl/grlc/grlc-query
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/get-key-figures
http://www.w3.org/2000/01/rdf-schema#label
Get key figures as SVG
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/get-key-figures
https://w3id.org/kpxl/grlc/endpoint
https://w3id.org/np/l/nanopub-query-1.1/repo/full
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/get-key-figures
https://w3id.org/kpxl/grlc/sparql
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
prefix np: <http://www.nanopub.org/nschema#>
prefix npa: <http://purl.org/nanopub/admin/>
prefix npx: <http://purl.org/nanopub/x/>
prefix dct: <http://purl.org/dc/terms/>
prefix fip: <https://w3id.org/fair/fip/terms/>
select ?svg where {
# Each figure repeats the gates of the view that lists the same entities on this
# page, so a number can never disagree with the list it links to.
# Total FAIR Supporting Resources (distinct resources, incl. FAIR-Enabling Resources).
{ select (count(distinct ?fsr) as ?n_fsr) where {
graph npa:graph {
?fsrnp npx:introduces|npx:describes ?fsr ; npx:hasNanopubType ?fsrt ; npa:hasValidSignatureForPublicKey ?fsrpk ; dct:created ?fsrdate .
values ?fsrt { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource }
filter(str(?fsrdate) > "2022")
filter not exists { ?fsrnp npx:hasNanopubType npx:ExampleNanopub . }
filter not exists { ?fsrx npx:invalidates ?fsrnp ; npa:hasValidSignatureForPublicKey ?fsrpk . }
}
} }
# FIPs, excluding reference FIPs.
{ select (count(distinct ?fip) as ?n_fip) where {
graph npa:graph {
?fipnp npx:hasNanopubType fip:FAIR-Implementation-Profile ; npx:introduces ?fip ; npa:hasValidSignatureForPublicKey ?fippk ; np:hasAssertion ?fipa .
filter not exists { ?fipnp npx:hasNanopubType fip:Reference-FAIR-Implementation-Profile . }
filter not exists { ?fipnp npx:hasNanopubType npx:ExampleNanopub . }
filter not exists { ?fipx npx:invalidates ?fipnp ; npa:hasValidSignatureForPublicKey ?fippk . }
}
graph ?fipa { ?fip a fip:FAIR-Implementation-Profile ; rdfs:label ?fiplabel ; fip:declared-by ?fipcomm . }
} }
# Reference FIPs: the latest one per community.
{ select (count(*) as ?n_rfip) where {
{ select ?rcommunity (max(?rdate) as ?rlatest) where {
graph npa:graph {
?rcnp npx:hasNanopubType fip:Reference-FAIR-Implementation-Profile ; npa:hasValidSignatureForPublicKeyHash ?rcpk ;
dct:created ?rdate ; np:hasAssertion ?rca ; npx:introduces ?rcrfip .
filter not exists { ?rcnpx npx:invalidates ?rcnp ; npa:hasValidSignatureForPublicKeyHash ?rcpk . }
}
graph ?rca { ?rcrfip fip:declared-by ?rcommunity . }
} group by ?rcommunity }
graph npa:graph {
?rnp npx:hasNanopubType fip:Reference-FAIR-Implementation-Profile ; npa:hasValidSignatureForPublicKeyHash ?rpk ;
dct:created ?rlatest ; np:hasAssertion ?ra ; npx:introduces ?rfip .
filter not exists { ?rnpx npx:invalidates ?rnp ; npa:hasValidSignatureForPublicKeyHash ?rpk . }
}
graph ?ra { ?rfip a fip:Reference-FAIR-Implementation-Profile ; rdfs:label ?rfiplabel ; fip:declared-by ?rcommunity . }
} }
# FAIR Implementation Communities: latest declaration each, label required.
{ select (count(distinct ?community) as ?n_fic) where {
graph npa:graph {
?cnp npx:hasNanopubType fip:FAIR-Implementation-Community ; npx:introduces ?community ; npa:hasValidSignatureForPublicKey ?cpk ;
dct:created ?cdate ; np:hasAssertion ?ca .
filter(str(?cdate) > "2022")
filter not exists { ?cnp npx:hasNanopubType npx:ExampleNanopub . }
filter not exists { ?cx npx:invalidates ?cnp ; npa:hasValidSignatureForPublicKey ?cpk . }
}
graph ?ca { ?community rdfs:label ?clabel . }
optional {
graph npa:graph {
?cnp2 npx:hasNanopubType fip:FAIR-Implementation-Community ; npx:introduces ?community ; npa:hasValidSignatureForPublicKey ?cpk2 ; dct:created ?cdate2 .
filter not exists { ?cx2 npx:invalidates ?cnp2 ; npa:hasValidSignatureForPublicKey ?cpk2 . }
}
filter(?cdate2 > ?cdate)
}
filter(!bound(?cdate2))
} }
# Curated FSRs: qualified by the GO FAIR Foundation with a key on the curators
# list, counting only resources whose qualified declaration is still current.
{ select (count(distinct ?cfsr) as ?n_curated) where {
{ select ?cfsr ?cdate3 where {
{ select distinct ?qnp_target where {
{ select ?curators_a where {
graph npa:graph {
<https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> npa:hasValidSignatureForPublicKey ?curators_pk .
?curators_np npa:hasValidSignatureForPublicKey ?curators_pk ; np:hasAssertion ?curators_a .
filter not exists { ?curators_x npx:invalidates ?curators_np ; npa:hasValidSignatureForPublicKey ?curators_pk . }
}
graph npa:networkGraph {
?curators_np (npx:supersedes)* <https://w3id.org/np/RA27Uhopq4MHZziL2lKXX-wTb1jz4KVLbHaupxyAcCt9Y> .
filter not exists { ?curators_y npx:supersedes ?curators_np }
}
} }
graph ?qa { ?qualifier npx:qualifies ?qnp_target . }
values ?qualifier { <https://ror.org/056j50v04> <https://www.gofairfoundation.org> <https://www.gofairfoundation.org/> <https://gofairfoundation.org> }
graph npa:graph {
?qnp np:hasAssertion ?qa ; npa:hasValidSignatureForPublicKey ?qpk .
filter not exists { ?qx npx:invalidates ?qnp ; npa:hasValidSignatureForPublicKey ?qpk . }
}
graph ?curators_a { ?qk npx:hasPublicKey ?qpk . }
} }
graph npa:graph {
?qnp_target npx:introduces|npx:describes ?cfsr ; rdfs:label ?cfsrlabel ; npa:hasValidSignatureForPublicKey ?cpk3 ; dct:created ?cdate3 .
?qnp_target npx:hasNanopubType ?cfsrtype . values ?cfsrtype { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource }
filter(str(?cdate3) > "2022")
filter not exists { ?qnp_target npx:hasNanopubType npx:ExampleNanopub . }
filter not exists { ?cx3 npx:invalidates ?qnp_target ; npa:hasValidSignatureForPublicKey ?cpk3 . }
}
} }
# Anti-join written as OPTIONAL + !bound rather than FILTER NOT EXISTS / MINUS:
# the left join forces the ~320 candidates to be evaluated first, so the newer
# declaration lookup is an index probe per candidate instead of a full scan.
optional {
graph npa:graph {
?cnp4 npx:introduces|npx:describes ?cfsr ; npa:hasValidSignatureForPublicKey ?cpk4 ; dct:created ?cdate4 .
?cnp4 npx:hasNanopubType ?cfsrtype4 . values ?cfsrtype4 { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource }
filter not exists { ?cnp4 npx:hasNanopubType npx:ExampleNanopub . }
filter not exists { ?cx4 npx:invalidates ?cnp4 ; npa:hasValidSignatureForPublicKey ?cpk4 . }
}
filter(?cdate4 > ?cdate3)
}
filter(!bound(?cdate4))
} }
bind(concat(
'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 84" width="100%" height="84" font-family="sans-serif">',
'<a href="#fsr-types">',
'<text x="64.0" y="46" text-anchor="middle" font-size="28" font-weight="bold" fill="#4a7fb5">',
str(?n_fsr),
'</text>',
'<text x="64.0" y="64" text-anchor="middle" font-size="11" fill="#555">FAIR Supporting</text>',
'<text x="64.0" y="77" text-anchor="middle" font-size="11" fill="#555">Resources</text>',
'</a>',
'<line x1="128.0" y1="18" x2="128.0" y2="70" stroke="#ddd" stroke-width="1"></line>',
'<a href="#fips">',
'<text x="192.0" y="46" text-anchor="middle" font-size="28" font-weight="bold" fill="#4a7fb5">',
str(?n_fip),
'</text>',
'<text x="192.0" y="64" text-anchor="middle" font-size="11" fill="#555">FIPs</text>',
'</a>',
'<line x1="256.0" y1="18" x2="256.0" y2="70" stroke="#ddd" stroke-width="1"></line>',
'<a href="#reference-fips-rfips">',
'<text x="320.0" y="46" text-anchor="middle" font-size="28" font-weight="bold" fill="#4a7fb5">',
str(?n_rfip),
'</text>',
'<text x="320.0" y="64" text-anchor="middle" font-size="11" fill="#555">Reference FIPs</text>',
'</a>',
'<line x1="384.0" y1="18" x2="384.0" y2="70" stroke="#ddd" stroke-width="1"></line>',
'<a href="#fair-communities">',
'<text x="448.0" y="46" text-anchor="middle" font-size="28" font-weight="bold" fill="#4a7fb5">',
str(?n_fic),
'</text>',
'<text x="448.0" y="64" text-anchor="middle" font-size="11" fill="#555">FAIR Communities</text>',
'</a>',
'<line x1="512.0" y1="18" x2="512.0" y2="70" stroke="#ddd" stroke-width="1"></line>',
'<a href="#curated-fsrs">',
'<text x="576.0" y="46" text-anchor="middle" font-size="28" font-weight="bold" fill="#4a7fb5">',
str(?n_curated),
'</text>',
'<text x="576.0" y="64" text-anchor="middle" font-size="11" fill="#555">Curated FSRs</text>',
'</a>',
'</svg>') as ?svg)
}
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/provenance
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/assertion
http://www.w3.org/ns/prov#wasAttributedTo
https://orcid.org/0000-0002-1267-0234
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/pubinfo
https://orcid.org/0000-0002-1267-0234
http://xmlns.com/foaf/0.1/name
Tobias Kuhn
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
http://purl.org/dc/terms/created
2026-09-18T10:34:50Z
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
http://purl.org/dc/terms/creator
https://w3id.org/np/RAlgF8um78nQxxJhJTNMZ3tpWJOntfTULJWMWr5Fmo4zU/fairimpl-bot
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
http://purl.org/dc/terms/license
https://creativecommons.org/licenses/by/4.0/
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
http://purl.org/nanopub/x/embeds
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/get-key-figures
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
http://www.w3.org/2000/01/rdf-schema#label
Get key figures as SVG
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
https://w3id.org/np/o/ntemplate/wasCreatedFromProvenanceTemplate
https://w3id.org/np/RA7lSq6MuK_TIC6JMSHvLtee3lpLoZDOqLJCLXevnrPoU
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate
https://w3id.org/np/RACJ58Gvyn91LqCKIO9zu1eijDQIeEff28iyDrJgjSJF8
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate
https://w3id.org/np/RAukAcWHRDlkqxk7H2XNSegc1WnHI569INvNr-xdptDGI
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
https://w3id.org/np/o/ntemplate/wasCreatedFromTemplate
https://w3id.org/np/RAEFAt-QcFK0ZhqfvlsmS10BnzGJA0xwOICZXkO-ai87k
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/sig
http://purl.org/nanopub/x/hasAlgorithm
RSA
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/sig
http://purl.org/nanopub/x/hasPublicKey
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzZAkv4Mu1YSUxQMriBnhYunqosX5wpuQ3FjUyzW8wTC51wjCmhsChyhS+mCx7Od+2MTDpdhxDWA+pH1r9AX508X2rIY/sbpMS+pd56e0qKPQ0t4folln1TgamPN9iOlY/yLc2x27AdipWIGXUdtL2iAcb+P/Y5dQS2AkHMS3lP2e5JBL5/bD/10qvTLKvdsqIKts8qjuLpxr9CFbsS2gLjMkXL5D2IsJ0cL5sgmIfS1inLVxIfXrS/OgqYNFqeNznUYCVWfo0g7DKjnjiICz3omeQeJFLYwlJ6PhUhYDQS6O318DGwUCwhnuXbBbwL9evZa2I/0Pwu5xpZdNLYJ5UwIDAQAB
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/sig
http://purl.org/nanopub/x/hasSignature
bujWTGbpa6E0mVTJaNYUHMRSCyfvyDfxzJUmcnVI+2+JUjodx9OjaYpE6mkWPYZg5NRbNg9BmXzxd1cVFfL85q8+EP/Y4PwR+MwL+lcEjtb2JWBZ+zjC4HuoYhgALw/nNTZfBWVW8BG7SP1O7rgWhRowIGIlinh3ZKcOUPHW+Lb/TqPQ+4id6icZH8eYOqkIyinRv5tK835rgxiubNs19ujHpEZ6T5ga0FOTrttWnocbTbqQevUgqaFetxkboeOsnioyN8M9aeLZbxjuDp1In1irVPyr/LESQXmcVhmfwCc4XC9xPtwHN5L54c0k+CC8ZCGuLe/3738E+8StMTyF7g==
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/sig
http://purl.org/nanopub/x/hasSignatureTarget
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw
https://w3id.org/np/RA1U3C-rcDa59WYEaBvIxgQJi64kuVasZ-YNF6UDXhaXw/sig
http://purl.org/nanopub/x/signedBy
https://w3id.org/np/RAlgF8um78nQxxJhJTNMZ3tpWJOntfTULJWMWr5Fmo4zU/fairimpl-bot