https://w3id.org/np/RAWFCNTHVRIbn4F0egnAqxPsrtSzM-k1U-YsnO_k5xEPk
.trig | .trig.txt | .jelly | .jelly.txt | .jsonld | .jsonld.txt | .nq | .nq.txt | .xml | .xml.txt
@prefix this: <https://w3id.org/np/RAWFCNTHVRIbn4F0egnAqxPsrtSzM-k1U-YsnO_k5xEPk> .
@prefix sub: <https://w3id.org/np/RAWFCNTHVRIbn4F0egnAqxPsrtSzM-k1U-YsnO_k5xEPk/> .
@prefix np: <http://www.nanopub.org/nschema#> .
@prefix grlc: <https://w3id.org/kpxl/grlc/> .
@prefix dct: <http://purl.org/dc/terms/> .
@prefix nt: <https://w3id.org/np/o/ntemplate/> .
@prefix npx: <http://purl.org/nanopub/x/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix orcid: <https://orcid.org/> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
sub:Head {
this: a np:Nanopublication;
np:hasAssertion sub:assertion;
np:hasProvenance sub:provenance;
np:hasPublicationInfo sub:pubinfo .
}
sub:assertion {
sub:get-curated-fsrs a grlc:grlc-query;
dct:description "Returns the FAIR Supporting Resources (FSRs, including FAIR-Enabling Resources) whose latest metadata nanopublication carries a GO FAIR Foundation curation badge: a non-invalidated npx:qualifies statement by ROR 056j50v04 or one of the gofairfoundation.org IRIs, signed by a curator from the GFF curators list. Shows the FSR, its types (from the FIP Ontology typology), the date of the curation, and the metadata nanopublication. Nanopublications that a GO FAIR Foundation curator has disapproved of (npx:disapprovesOf, signed with a key from the curators list and not invalidated) are left out, as in the FIP Wizard lookup, (applied to the newest version of each resource, so a resource whose newest version is disapproved is not listed). The type labels are derived from the type IRIs (hyphens to spaces), as in the Declared FSRs view, which made the query three times faster than looking the labels up in the ontology per row.";
dct:license <http://www.apache.org/licenses/LICENSE-2.0>;
rdfs:label "Get curated FSRs";
grlc:endpoint <https://w3id.org/np/l/nanopub-query-1.1/repo/full>;
grlc:sparql """prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
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 xsd: <http://www.w3.org/2001/XMLSchema#>
prefix dct: <http://purl.org/dc/terms/>
prefix owl: <http://www.w3.org/2002/07/owl#>
prefix foaf: <http://xmlns.com/foaf/0.1/>
prefix prov: <http://www.w3.org/ns/prov#>
prefix skos: <http://www.w3.org/2004/02/skos/core#>
prefix schema: <https://schema.org/>
prefix gen: <https://w3id.org/kpxl/gen/terms/>
prefix fip: <https://w3id.org/fair/fip/terms/>
prefix tpff: <https://w3id.org/fair/3pff/>
prefix search: <http://www.openrdf.org/contrib/lucenesail#>
select ?fsr (min(?fsr_label) as ?fsr_label)
(group_concat(distinct str(?type); separator=\" \") as ?types_multi_iri)
(group_concat(distinct ?type_label; separator=\"\\n\") as ?types_label_multi)
(max(?qdate) as ?curated_on)
(min(?np) as ?np) (\"^\" as ?np_label)
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 ?np . }
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 ; dct:created ?qdate .
filter not exists { ?qx npx:invalidates ?qnp ; npa:hasValidSignatureForPublicKey ?qpk . }
}
graph ?curators_a { ?qk npx:hasPublicKey ?qpk . }
graph npa:graph {
?np npx:introduces|npx:describes ?fsr ; rdfs:label ?fsr_label ; npa:hasValidSignatureForPublicKey ?pk ; dct:created ?date ; np:hasAssertion ?a .
?np npx:hasNanopubType ?fsr_type . filter(?fsr_type in (fip:FAIR-Enabling-Resource, fip:FAIR-Supporting-Resource))
filter(str(?date) > \"2022\")
filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . }
filter not exists { ?x npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pk . }
filter not exists {
graph ?da { ?disapprover npx:disapprovesOf ?np . }
graph npa:graph { ?dnp np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpk . filter not exists { ?dx npx:invalidates ?dnp ; npa:hasValidSignatureForPublicKey ?dpk . } }
graph ?curators_a { ?dk npx:hasPublicKey ?dpk . }
}
filter not exists {
?np2 npx:introduces|npx:describes ?fsr ; npa:hasValidSignatureForPublicKey ?pk2 ; dct:created ?date2 .
?np2 npx:hasNanopubType ?fsr_type2 . filter(?fsr_type2 in (fip:FAIR-Enabling-Resource, fip:FAIR-Supporting-Resource))
filter not exists { ?np2 npx:hasNanopubType npx:ExampleNanopub . }
filter not exists { ?x2 npx:invalidates ?np2 ; npa:hasValidSignatureForPublicKey ?pk2 . }
filter(?date2 > ?date)
}
}
optional {
graph npa:graph { ?np npx:hasNanopubType ?type . }
filter(strstarts(str(?type), \"https://w3id.org/fair/fip/terms/\"))
filter(?type not in (fip:FAIR-Enabling-Resource, fip:FAIR-Supporting-Resource, fip:Available-FAIR-Enabling-Resource, fip:Available-FAIR-Supporting-Resource, fip:FAIR-Enabling-Resource-to-be-Developed, fip:FAIR-Supporting-Resource-to-be-Developed))
?type rdfs:subClassOf+ fip:FAIR-Supporting-Resource .
bind(replace(replace(str(?type), \"^.*/\", \"\"), \"-\", \" \") as ?type_label)
}
} group by ?fsr order by ?fsr_label
""" .
}
sub:provenance {
sub:assertion prov:wasAttributedTo orcid:0000-0002-1267-0234 .
}
sub:pubinfo {
orcid:0000-0002-1267-0234 foaf:name "Tobias Kuhn" .
this: dct:created "2026-10-26T16:56:47Z"^^xsd:dateTime;
dct:creator <https://w3id.org/np/RAlgF8um78nQxxJhJTNMZ3tpWJOntfTULJWMWr5Fmo4zU/fairimpl-bot>;
dct:license <https://creativecommons.org/licenses/by/4.0/>;
npx:embeds sub:get-curated-fsrs;
npx:supersedes <https://w3id.org/np/RA8R5adv2oEH-8RtEL8pDr3UgBJtYXDPwC-N1Z3wl33d0>;
rdfs:label "Get curated FSRs";
nt:wasCreatedFromProvenanceTemplate <https://w3id.org/np/RA7lSq6MuK_TIC6JMSHvLtee3lpLoZDOqLJCLXevnrPoU>;
nt:wasCreatedFromPubinfoTemplate <https://w3id.org/np/RACJ58Gvyn91LqCKIO9zu1eijDQIeEff28iyDrJgjSJF8>,
<https://w3id.org/np/RAukAcWHRDlkqxk7H2XNSegc1WnHI569INvNr-xdptDGI>;
nt:wasCreatedFromTemplate <https://w3id.org/np/RAEFAt-QcFK0ZhqfvlsmS10BnzGJA0xwOICZXkO-ai87k> .
sub:sig npx:hasAlgorithm "RSA";
npx:hasPublicKey "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzZAkv4Mu1YSUxQMriBnhYunqosX5wpuQ3FjUyzW8wTC51wjCmhsChyhS+mCx7Od+2MTDpdhxDWA+pH1r9AX508X2rIY/sbpMS+pd56e0qKPQ0t4folln1TgamPN9iOlY/yLc2x27AdipWIGXUdtL2iAcb+P/Y5dQS2AkHMS3lP2e5JBL5/bD/10qvTLKvdsqIKts8qjuLpxr9CFbsS2gLjMkXL5D2IsJ0cL5sgmIfS1inLVxIfXrS/OgqYNFqeNznUYCVWfo0g7DKjnjiICz3omeQeJFLYwlJ6PhUhYDQS6O318DGwUCwhnuXbBbwL9evZa2I/0Pwu5xpZdNLYJ5UwIDAQAB";
npx:hasSignature "Mqck8gDPjwA0UBlLJLEOeWOyHIWqf0fXMPqAPUo0r9pF7PmGBazI6c38YVDgiZgO6vrDesYKeZLAtQDaCz5t6JSK4L714wc8uo8BaNV1Yx3A38Su4RH1XTQXclqmRlGP6yEevZ56IOfATwPmPSbjX9nFRlTMHvPnfM2ZSS7dLh82YIcQPdQ9gkpCc4lh3bvF4EgTFdnF3+cBZ+ZepawAyhNYX7qxARsv8eE3qLlz0TnLPwMvq/PeMxt+PKOgCqwPTQwxulXwhUW0ukIUx4SJO6Q3SazF4TpQg+RmyrxzyQUa0myVzi3jBExPdVj0TJ6FIrkx4I+BEYLwE4haf0G4IQ==";
npx:hasSignatureTarget this:;
npx:signedBy <https://w3id.org/np/RAlgF8um78nQxxJhJTNMZ3tpWJOntfTULJWMWr5Fmo4zU/fairimpl-bot> .
}