https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/Head https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU http://www.nanopub.org/nschema#hasAssertion https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/assertion https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU http://www.nanopub.org/nschema#hasProvenance https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/provenance https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU http://www.nanopub.org/nschema#hasPublicationInfo https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/pubinfo https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://www.nanopub.org/nschema#Nanopublication https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/assertion https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/get-fip-declared-fsrs http://purl.org/dc/terms/description For a FAIR Implementation Profile (FIP) or reference FIP (rFIP), lists the FAIR Supporting Resources (FSRs) it declares, ordered like the FIP itself: by FAIR principle in FIP order (F1, F2, F3, F4, A1.1, A1.2, A2, I1, I2, I3, R1.1, R1.2), then the supplementary "S" questions (FIP-S-Question-*, answered by FIP-Supporting-Declaration and FIP-No-Choice-Supporting-Declaration nanopublications) in a fixed order, and then by resource. One row per FSR and FIP question; the data and metadata variants of a question are merged, with the scope column telling whether the FSR was declared for metadata, data or both (empty for the S questions, which have no such variants). Columns: the FIP question as a group header (principle code and the question text as in the FIP Wizard, with "data / metadata" where the two variants differ, and the I2 question worded as its metadata variant so that both variants share one header; for an S question "S:" followed by the question name derived from its identifier and, if the question term is introduced by a nanopublication with a skos:definition, that definition; the question_group column is rendered by Nanodash as a header row above the rows of that question), the FSR (labelled from its metadata nanopublication, or by its identifier), its FSR types, scope, the kind of use (current use, planned use, planned replacement), and the declaration nanopublication. A FIP is resolved through its declaration index. A reference FIP (rFIP) that has no such index is resolved through the recommendation nanopublications of its community instead (nanopublication type fip:recommended-by, one FSR each): those published from the same FIP Wizard project as the profile nanopublication, which is what ties the generations of one rFIP together - it keeps the ones published before the Wizard started linking each recommendation to the rFIP nanopublication, and leaves out recommendations the same community made in a different Wizard project. Where no recommendation of the community comes from a Wizard project at all, all of its current recommendations are shown. Such a recommendation carries neither a FIP question nor a use property, so its row has no question header, an empty scope, and "recommended" as its use. A plain FIP without an index still falls back to the declarations of the same community: those carrying the FIP's own version (ignoring a leading "v"), or else the declarations of the most recently published version. This version fixes the rFIP case: the version-matching fallback cannot see the recommendations, which carry no version, and answered an rFIP with the community's whole FIP instead - 45 current-use FSRs rather than the 3 recommended ones for PARC Toxicology, and 12 planned-use ones rather than the 7 recommended for FAIR2Adapt. https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/get-fip-declared-fsrs http://purl.org/dc/terms/license http://www.apache.org/licenses/LICENSE-2.0 https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/get-fip-declared-fsrs http://www.w3.org/1999/02/22-rdf-syntax-ns#type https://w3id.org/kpxl/grlc/grlc-query https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/get-fip-declared-fsrs http://www.w3.org/2000/01/rdf-schema#label Get the FSRs declared in a FIP https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/get-fip-declared-fsrs https://w3id.org/kpxl/grlc/endpoint https://w3id.org/np/l/nanopub-query-1.1/repo/full https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/get-fip-declared-fsrs https://w3id.org/kpxl/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 ?question_group ?fsr ?fsr_label ?types_multi_iri ?types_label_multi ?scope ?use ?np ?np_label where { { select ?principle (coalesce(concat(min(?qbase), ": ", min(?qtext)), "") as ?question_group) ?fsr (coalesce(min(?fsr_label_x), replace(str(?fsr), "^.*[/#]", "")) as ?fsr_label) (group_concat(distinct str(?type); separator=" ") as ?types_multi_iri) (group_concat(distinct ?type_label; separator="\n") as ?types_label_multi) (coalesce(if(max(?isMD) = 1 && max(?isD) = 1, "Metadata, Data", if(max(?isMD) = 1, "Metadata", if(max(?isD) = 1, "Data", ""))), "") as ?scope) (group_concat(distinct ?use; separator=", ") as ?use) (min(?dnp) as ?np) ("^" as ?np_label) (min(?sortkey) as ?sk) where { graph npa:graph { ?fipnp npx:introduces ?_fip_iri ; np:hasAssertion ?fa ; npa:hasValidSignatureForPublicKey ?fpk . filter not exists { ?fx npx:invalidates ?fipnp ; npa:hasValidSignatureForPublicKey ?fpk . } } graph ?fa { ?_fip_iri fip:declared-by ?community . optional { ?_fip_iri schema:version|<http://schema.org/version> ?version . } } { graph ?fa { ?_fip_iri fip:has-declaration-index ?index . } graph npa:networkGraph { ?index npx:includesElement ?dnp . } graph npa:graph { ?dnp np:hasAssertion ?da . } values (?useProp ?use) { (fip:declares-current-use-of "current use") (fip:declares-planned-use-of "planned use") (fip:declares-planned-replacement-of "planned replacement") (fip:declares-replacement-from "replacement from") (fip:declares-replacement-to "replacement to") } graph ?da { ?decl fip:refers-to-question ?question ; ?useProp ?fsr . } graph npa:graph { ?dnp npx:hasNanopubType ?dtype ; npa:hasValidSignatureForPublicKey ?dpk . filter(?dtype in (fip:FIP-Declaration, fip:FIP-Supporting-Declaration, fip:FIP-No-Choice-Supporting-Declaration)) filter not exists { ?dx npx:invalidates ?dnp ; npa:hasValidSignatureForPublicKey ?dpk . } } } union { graph ?fa { ?_fip_iri a fip:Reference-FAIR-Implementation-Profile . filter not exists { ?_fip_iri fip:has-declaration-index ?ix . } } graph npa:graph { ?fipnp np:hasPublicationInfo ?fpi . } graph ?fpi { ?fipnp prov:wasDerivedFrom ?project . } filter(strstarts(str(?project), "https://w3id.org/fip/wizard/")) graph npa:graph { ?dnp npx:hasNanopubType fip:recommended-by ; np:hasAssertion ?da ; np:hasPublicationInfo ?dpi ; npa:hasValidSignatureForPublicKey ?dpk . filter not exists { ?dx npx:invalidates ?dnp ; npa:hasValidSignatureForPublicKey ?dpk . } } graph ?dpi { ?dnp prov:wasDerivedFrom ?project . } graph ?da { ?fsr fip:recommended-by ?community . } bind("recommended" as ?use) } union { graph ?fa { ?_fip_iri a fip:Reference-FAIR-Implementation-Profile . filter not exists { ?_fip_iri fip:has-declaration-index ?ix . } } graph npa:graph { ?dnp npx:hasNanopubType fip:recommended-by ; np:hasAssertion ?da ; npa:hasValidSignatureForPublicKey ?dpk . filter not exists { ?dx npx:invalidates ?dnp ; npa:hasValidSignatureForPublicKey ?dpk . } } graph ?da { ?fsr fip:recommended-by ?community . } filter not exists { graph npa:graph { ?onp npx:hasNanopubType fip:recommended-by ; np:hasAssertion ?oa ; np:hasPublicationInfo ?opi . } graph ?oa { ?ofsr fip:recommended-by ?community . } graph ?opi { ?onp prov:wasDerivedFrom ?oproj . } filter(strstarts(str(?oproj), "https://w3id.org/fip/wizard/")) } bind("recommended" as ?use) } union { graph ?fa { filter not exists { ?_fip_iri fip:has-declaration-index ?ix . } filter not exists { ?_fip_iri a fip:Reference-FAIR-Implementation-Profile . } } { select ?community (?dvC as ?chosenRawVersion) where { graph npa:graph { ?fnpB npx:introduces ?_fip_iri ; np:hasAssertion ?faB . } graph ?faB { ?_fip_iri fip:declared-by ?community . optional { ?_fip_iri schema:version|<http://schema.org/version> ?vB . } } bind(replace(str(coalesce(?vB, "")), "^[vV][.]?", "") as ?nverB) graph ?daC { ?declC fip:declared-by ?community ; schema:version|<http://schema.org/version> ?dvC . } graph npa:graph { ?dnpC np:hasAssertion ?daC ; npx:hasNanopubType fip:FIP-Declaration ; dct:created ?dtC . } bind(if(replace(str(?dvC), "^[vV][.]?", "") = ?nverB, 0, 1) as ?pref) } order by ?pref desc(?dtC) limit 1 } graph ?da0 { ?decl0 fip:declared-by ?community ; schema:version|<http://schema.org/version> ?chosenRawVersion . } graph npa:graph { ?dnp np:hasAssertion ?da0 . } graph npa:graph { ?dnp np:hasAssertion ?da . } values (?useProp ?use) { (fip:declares-current-use-of "current use") (fip:declares-planned-use-of "planned use") (fip:declares-planned-replacement-of "planned replacement") (fip:declares-replacement-from "replacement from") (fip:declares-replacement-to "replacement to") } graph ?da { ?decl fip:refers-to-question ?question ; ?useProp ?fsr . } graph npa:graph { ?dnp npx:hasNanopubType ?dtype ; npa:hasValidSignatureForPublicKey ?dpk . filter(?dtype in (fip:FIP-Declaration, fip:FIP-Supporting-Declaration, fip:FIP-No-Choice-Supporting-Declaration)) filter not exists { ?dx npx:invalidates ?dnp ; npa:hasValidSignatureForPublicKey ?dpk . } } } bind(coalesce(?question, fip:FIP-Question-NONE) as ?quest) bind(strstarts(str(?quest), "https://w3id.org/fair/fip/terms/FIP-S-Question-") as ?isS) bind(replace(str(?quest), "^.*FIP-(S-)?Question-", "") as ?qcode) bind(if(?isS, "S", replace(?qcode, "-(MD|D)$", "")) as ?qbase) bind(if(!?isS && strends(?qcode, "-MD"), 1, 0) as ?isMD) bind(if(!?isS && strends(?qcode, "-D"), 1, 0) as ?isD) bind(if(?isS, ?quest, iri(concat("https://w3id.org/fair/principles/terms/", ?qbase))) as ?principle) optional { graph npa:graph { ?qnp npx:introduces ?quest ; np:hasAssertion ?qa . } graph ?qa { ?quest skos:definition ?qdef . } } bind(replace(replace(replace(replace(?qdef, " for datasets", " for data / metadata"), " your datasets", " your data / metadata"), "(for|annotate|your) metadata records", "$1 data / metadata"), "to encode your data / metadata", "to annotate your data / metadata") as ?qtextDef) bind(replace(?qcode, "-", " ") as ?qname) bind(if(?isS, if(bound(?qtextDef), concat(?qname, " – ", ?qtextDef), ?qname), ?qtextDef) as ?qtext) bind(if(?isS, concat("5", lcase(?qcode)), concat(replace(replace(replace(replace(substr(?qbase, 1, 1), "F", "1"), "A", "2"), "I", "3"), "R", "4"), ?qbase)) as ?sortkey) optional { values ?p { npx:introduces npx:describes } graph npa:graph { ?fsrnp ?p ?fsr ; rdfs:label ?fsr_label_x ; npx:hasNanopubType ?sft ; npa:hasValidSignatureForPublicKey ?spk . values ?sft { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource } filter not exists { ?sx npx:invalidates ?fsrnp ; npa:hasValidSignatureForPublicKey ?spk . } } optional { graph npa:graph { ?fsrnp 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)) bind(replace(replace(str(?type), "^.*/", ""), "-", " ") as ?type_label) } } } group by ?principle ?fsr } } order by ?sk ?fsr_label https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/provenance https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/assertion http://www.w3.org/ns/prov#wasAttributedTo https://orcid.org/0000-0002-1267-0234 https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/pubinfo https://orcid.org/0000-0002-1267-0234 http://xmlns.com/foaf/0.1/name Tobias Kuhn https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU http://purl.org/dc/terms/created 2026-10-16T07:05:54Z https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU http://purl.org/dc/terms/creator https://w3id.org/np/RAlgF8um78nQxxJhJTNMZ3tpWJOntfTULJWMWr5Fmo4zU/fairimpl-bot https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU http://purl.org/dc/terms/license https://creativecommons.org/licenses/by/4.0/ https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU http://purl.org/nanopub/x/embeds https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/get-fip-declared-fsrs https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU http://purl.org/nanopub/x/supersedes https://w3id.org/np/RA6hKJfYNnjJ3tFZp2SrGnZIdXqw0ArI1bNiPdH2lpRgo https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU http://www.w3.org/2000/01/rdf-schema#label Get the FSRs declared in a FIP https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU https://w3id.org/np/o/ntemplate/wasCreatedFromProvenanceTemplate https://w3id.org/np/RA7lSq6MuK_TIC6JMSHvLtee3lpLoZDOqLJCLXevnrPoU https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate https://w3id.org/np/RACJ58Gvyn91LqCKIO9zu1eijDQIeEff28iyDrJgjSJF8 https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate https://w3id.org/np/RAukAcWHRDlkqxk7H2XNSegc1WnHI569INvNr-xdptDGI https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU https://w3id.org/np/o/ntemplate/wasCreatedFromTemplate https://w3id.org/np/RAEFAt-QcFK0ZhqfvlsmS10BnzGJA0xwOICZXkO-ai87k https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/sig http://purl.org/nanopub/x/hasAlgorithm RSA https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/sig http://purl.org/nanopub/x/hasPublicKey MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzZAkv4Mu1YSUxQMriBnhYunqosX5wpuQ3FjUyzW8wTC51wjCmhsChyhS+mCx7Od+2MTDpdhxDWA+pH1r9AX508X2rIY/sbpMS+pd56e0qKPQ0t4folln1TgamPN9iOlY/yLc2x27AdipWIGXUdtL2iAcb+P/Y5dQS2AkHMS3lP2e5JBL5/bD/10qvTLKvdsqIKts8qjuLpxr9CFbsS2gLjMkXL5D2IsJ0cL5sgmIfS1inLVxIfXrS/OgqYNFqeNznUYCVWfo0g7DKjnjiICz3omeQeJFLYwlJ6PhUhYDQS6O318DGwUCwhnuXbBbwL9evZa2I/0Pwu5xpZdNLYJ5UwIDAQAB https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/sig http://purl.org/nanopub/x/hasSignature q6lzEnuTyV0lwg41VAz7iDB60mH2Igpd+Zzm7eOQhpnUTP9TJZt1t4WtJKHjfipcOZkPGM2vZOO0nFF31JVGrwgzsFLcgBVnnWy16amDP3JFkNXVPmp4WUSlkmfCUVRhZKOAZjSIdoKVSTVvHuccKvZC9iTOLMDJSTBkR5zDsSp3qd7wnrL+XrYGft23qWAAnnllTaBEAfMGKxnue6B0hR7IAacvbdrEY2+FCAFlj0Hs9f0nlq/j1x9TUMZa1sqQEHC2c9A5eaV2m//kzCdPkj/P4vGEl8zT/GDH08Gp3sce+FwbR3ibD9y1onBSmcE73eG6I5sQfNwZ0b0ZrKy9zQ== https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/sig http://purl.org/nanopub/x/hasSignatureTarget https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU https://w3id.org/np/RAsy4Mu8HtU3MbYE-OgALh0PaQxiYLe4OmlWAPY_ghbHU/sig http://purl.org/nanopub/x/signedBy https://w3id.org/np/RAlgF8um78nQxxJhJTNMZ3tpWJOntfTULJWMWr5Fmo4zU/fairimpl-bot