. . . . "For a reference FAIR Implementation Profile (rFIP), lists the FAIR Supporting Resources (FSRs) it recommends, grouped by FAIR principle in FIP order (F1, F2, F3, F4, A1.1, A1.2, A2, I1, I2, I3, R1.1, R1.2, R1.3), then by label. A recommendation names no FIP question, so the principle comes from the FSR's types: an FSR type of the FIP Ontology enables (fip:enables) or supports (fip:supports) a principle, the same link as in \"Get the FAIR principles of an FSR\". An FSR with types linked to several principles appears under each of them; one whose types are linked to none appears last, under \"Other\". One row per principle and FSR. Columns: the principle as a group header (its code and its text from the FAIR Principles nanopublications, without F2's \"(defined by R1 below)\"; the principle_group column is rendered by Nanodash as a header row above the rows of that principle), the FSR (labelled from its metadata nanopublication, or by its identifier), its FSR types, whether its types enable or support the principle, and the recommendation nanopublication. An rFIP's content is the recommendation nanopublications of its community (nanopublication type fip:recommended-by, one FSR each): those whose provenance links them to this rFIP nanopublication (prov:wasDerivedFrom, as the FIP Wizard has published them since 2026); for an rFIP nanopublication without such recommendations, those published from the same FIP Wizard project as the profile nanopublication and not linked to an rFIP nanopublication; and where no recommendation of the community comes from a FIP Wizard project at all, all of its current recommendations. Profiles that carry a declaration index are treated the same way as the others, since an rFIP's recommendations are the authoritative statement of what it recommends." . . . "Get the FSRs recommended by a reference FIP" . . "prefix rdf: \nprefix rdfs: \nprefix np: \nprefix npa: \nprefix npx: \nprefix xsd: \nprefix dct: \nprefix owl: \nprefix foaf: \nprefix prov: \nprefix skos: \nprefix schema: \nprefix gen: \nprefix fip: \nprefix tpff: \nprefix search: \n\nselect ?principle_group ?fsr ?fsr_label ?types_multi_iri ?types_label_multi ?relation ?np ?np_label where {\n{ select ?pkey (min(?pheader) as ?principle_group)\n ?fsr (coalesce(min(?fsr_label_x), replace(str(?fsr), \"^.*[/#]\", \"\")) as ?fsr_label)\n (group_concat(distinct str(?type); separator=\" \") as ?types_multi_iri) (group_concat(distinct ?type_label; separator=\"\\n\") as ?types_label_multi)\n (group_concat(distinct ?rel_label; separator=\", \") as ?relation)\n (min(?rnp) as ?np) (\"^\" as ?np_label) (min(?sortkey) as ?sk)\nwhere {\n graph npa:graph {\n ?fipnp npx:introduces ?_fip_iri ; np:hasAssertion ?fa ; npa:hasValidSignatureForPublicKey ?fpk .\n filter not exists { ?fpkx npx:invalidates ?fipnp ; npa:hasValidSignatureForPublicKey ?fpk . }\n }\n graph ?fa { ?_fip_iri a fip:Reference-FAIR-Implementation-Profile ; fip:declared-by ?community . }\n {\n # Recommendations linked to this rFIP nanopublication (FIP Wizard, since 2026).\n graph npa:graph {\n ?rnp npx:hasNanopubType fip:recommended-by ; np:hasAssertion ?ra ; np:hasProvenance ?rp ;\n npa:hasValidSignatureForPublicKey ?rpk .\n filter not exists { ?rpkx npx:invalidates ?rnp ; npa:hasValidSignatureForPublicKey ?rpk . }\n }\n graph ?rp { ?ra prov:wasDerivedFrom ?fipnp . }\n graph ?ra { ?fsr fip:recommended-by ?community . }\n } union {\n # None linked: the recommendations from the same FIP Wizard project that are not linked to an rFIP nanopublication.\n filter not exists {\n graph npa:graph { ?lnp npx:hasNanopubType fip:recommended-by ; np:hasAssertion ?la ; np:hasProvenance ?lp . }\n graph ?lp { ?la prov:wasDerivedFrom ?fipnp . }\n }\n graph npa:graph { ?fipnp np:hasPublicationInfo ?fpi . }\n graph ?fpi { ?fipnp prov:wasDerivedFrom ?project . }\n filter(strstarts(str(?project), \"https://w3id.org/fip/wizard/\"))\n graph npa:graph {\n ?rnp npx:hasNanopubType fip:recommended-by ; np:hasAssertion ?ra ; np:hasProvenance ?rp ; np:hasPublicationInfo ?rpi ;\n npa:hasValidSignatureForPublicKey ?rpk .\n filter not exists { ?rpkx npx:invalidates ?rnp ; npa:hasValidSignatureForPublicKey ?rpk . }\n }\n graph ?rpi { ?rnp prov:wasDerivedFrom ?project . }\n graph ?ra { ?fsr fip:recommended-by ?community . }\n filter not exists { graph ?rp { ?ra prov:wasDerivedFrom ?otherfipnp . } }\n } union {\n # No recommendation of the community comes from a FIP Wizard project: all of its current recommendations.\n graph npa:graph {\n ?rnp npx:hasNanopubType fip:recommended-by ; np:hasAssertion ?ra ;\n npa:hasValidSignatureForPublicKey ?rpk .\n filter not exists { ?rpkx npx:invalidates ?rnp ; npa:hasValidSignatureForPublicKey ?rpk . }\n }\n graph ?ra { ?fsr fip:recommended-by ?community . }\n filter not exists {\n graph npa:graph { ?onp npx:hasNanopubType fip:recommended-by ; np:hasAssertion ?oa ; np:hasPublicationInfo ?opi . }\n graph ?oa { ?ofsr fip:recommended-by ?community . }\n graph ?opi { ?onp prov:wasDerivedFrom ?oproj . }\n filter(strstarts(str(?oproj), \"https://w3id.org/fip/wizard/\"))\n }\n }\n optional {\n values ?p { npx:introduces npx:describes }\n graph npa:graph {\n ?fsrnp ?p ?fsr ; rdfs:label ?fsr_label_x ; npx:hasNanopubType ?sft ; npa:hasValidSignatureForPublicKey ?spk .\n filter not exists { ?spkx npx:invalidates ?fsrnp ; npa:hasValidSignatureForPublicKey ?spk . }\n values ?sft { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource }\n }\n optional {\n graph npa:graph { ?fsrnp npx:hasNanopubType ?type . }\n filter(strstarts(str(?type), \"https://w3id.org/fair/fip/terms/\"))\n 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))\n bind(replace(replace(str(?type), \"^.*/\", \"\"), \"-\", \" \") as ?type_label)\n }\n }\n # The FAIR principle: a type of the FSR (from its metadata nanopublication) enables or supports it.\n optional {\n values ?p2 { npx:introduces npx:describes }\n graph npa:graph {\n ?fsrnp2 ?p2 ?fsr ; npx:hasNanopubType ?ptype ; npa:hasValidSignatureForPublicKey ?spk2 .\n filter not exists { ?spk2x npx:invalidates ?fsrnp2 ; npa:hasValidSignatureForPublicKey ?spk2 . }\n }\n filter(strstarts(str(?ptype), \"https://w3id.org/fair/fip/terms/\"))\n graph npa:graph {\n ?tnp npx:introduces ?ptype ; np:hasAssertion ?ta ; npa:hasValidSignatureForPublicKey ?tpk .\n filter not exists { ?tpkx npx:invalidates ?tnp ; npa:hasValidSignatureForPublicKey ?tpk . }\n }\n values (?prel ?rel_label) { (fip:enables \"enables\") (fip:supports \"supports\") }\n graph ?ta { ?ptype ?prel ?principle . }\n }\n bind(coalesce(?principle, ) as ?pkey)\n bind(replace(str(?pkey), \"^.*/\", \"\") as ?pcode)\n optional {\n graph npa:graph { ?pdnp npx:introduces|npx:describes ?pkey ; np:hasAssertion ?pda . }\n filter(strstarts(str(?pdnp), \"https://w3id.org/fair/principles/np/\"))\n graph ?pda { ?pkey skos:definition ?pdef . }\n }\n bind(if(!bound(?principle), \"Other: no FAIR principle linked to the FSR types\",\n if(bound(?pdef), concat(?pcode, \": \", ucase(substr(?pdef, 1, 1)), replace(substr(?pdef, 2), \" [(]defined by R1 below[)]$\", \"\")), ?pcode)) as ?pheader)\n bind(if(!bound(?principle), \"9\", concat(replace(replace(replace(replace(substr(?pcode, 1, 1), \"F\", \"1\"), \"A\", \"2\"), \"I\", \"3\"), \"R\", \"4\"), ?pcode)) as ?sortkey)\n} group by ?pkey ?fsr }\n} order by ?sk ?fsr_label\n" . . "Tobias Kuhn" . "2026-11-03T12:01:24Z"^^ . . . . . "Get the FSRs recommended by a reference FIP" . . . . . "RSA" . "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzZAkv4Mu1YSUxQMriBnhYunqosX5wpuQ3FjUyzW8wTC51wjCmhsChyhS+mCx7Od+2MTDpdhxDWA+pH1r9AX508X2rIY/sbpMS+pd56e0qKPQ0t4folln1TgamPN9iOlY/yLc2x27AdipWIGXUdtL2iAcb+P/Y5dQS2AkHMS3lP2e5JBL5/bD/10qvTLKvdsqIKts8qjuLpxr9CFbsS2gLjMkXL5D2IsJ0cL5sgmIfS1inLVxIfXrS/OgqYNFqeNznUYCVWfo0g7DKjnjiICz3omeQeJFLYwlJ6PhUhYDQS6O318DGwUCwhnuXbBbwL9evZa2I/0Pwu5xpZdNLYJ5UwIDAQAB" . "QgpoLcaObl3fEkPpjXPahxZ73UrVQ+YPDFknGgtxRr4yJwSx68kuS8fTiMKbO2RgYkN0hB6VqwHTTc2rN8xFwBTxzyu00E4re8B0Q/HgjNuTD0E5uaLc2gJMKnfePrk1jthEwtqGUVvz1LQkcfPXvRMF/VNO58Oi8xLfurs5UC9wqYP8/4Vwrzu3pu1C/CPmdBK68cZRkOlyioKSZmP9z5TZ9UA7c3VKIebnQn71ih0RHyuZPqz3P0kNjkoFzs6bwp9K1XQ4WvlzKiue89FchYw4hvJ+v9AH7BhlQnEzQBVvGfbTS3HA4wED4k16YUvXyiG3Sg8DwLobaCg2e0aosg==" . . .