rows { options { physical_type: PHYSICAL_STREAM_TYPE_QUADS max_name_table_size: 128 max_prefix_table_size: 16 max_datatype_table_size: 16 logical_type: LOGICAL_STREAM_TYPE_DATASETS version: 2 } } rows { prefix { value: "https://w3id.org/np/" } } rows { name { value: "RAuYPL0yBL70Evl59X_hmNil3U_k9SSGA7dWryBcCbsLA" } } rows { namespace { name: "this" value { prefix_id: 1 } } } rows { prefix { value: "https://w3id.org/np/RAuYPL0yBL70Evl59X_hmNil3U_k9SSGA7dWryBcCbsLA/" } } rows { name { } } rows { namespace { name: "sub" value { prefix_id: 2 } } } rows { prefix { value: "http://www.nanopub.org/nschema#" } } rows { namespace { name: "np" value { prefix_id: 3 name_id: 2 } } } rows { prefix { value: "https://w3id.org/kpxl/grlc/" } } rows { namespace { name: "grlc" value { prefix_id: 4 name_id: 2 } } } rows { prefix { value: "http://purl.org/dc/terms/" } } rows { namespace { name: "dct" value { prefix_id: 5 name_id: 2 } } } rows { prefix { value: "https://w3id.org/np/o/ntemplate/" } } rows { namespace { name: "nt" value { prefix_id: 6 name_id: 2 } } } rows { prefix { value: "http://purl.org/nanopub/x/" } } rows { namespace { name: "npx" value { prefix_id: 7 name_id: 2 } } } rows { prefix { value: "http://www.w3.org/2001/XMLSchema#" } } rows { namespace { name: "xsd" value { prefix_id: 8 name_id: 2 } } } rows { prefix { value: "http://www.w3.org/2000/01/rdf-schema#" } } rows { namespace { name: "rdfs" value { prefix_id: 9 name_id: 2 } } } rows { prefix { value: "https://orcid.org/" } } rows { namespace { name: "orcid" value { prefix_id: 10 name_id: 2 } } } rows { prefix { value: "http://www.w3.org/ns/prov#" } } rows { namespace { name: "prov" value { prefix_id: 11 name_id: 2 } } } rows { prefix { value: "http://xmlns.com/foaf/0.1/" } } rows { namespace { name: "foaf" value { prefix_id: 12 name_id: 2 } } } rows { name { value: "hasAssertion" } } rows { name { value: "assertion" } } rows { name { value: "Head" } } rows { quad { s_iri { prefix_id: 1 name_id: 1 } p_iri { prefix_id: 3 name_id: 3 } o_iri { prefix_id: 2 } g_iri { } } } rows { name { value: "hasProvenance" } } rows { name { value: "provenance" } } rows { quad { p_iri { prefix_id: 3 } o_iri { prefix_id: 2 } } } rows { name { value: "hasPublicationInfo" } } rows { name { value: "pubinfo" } } rows { quad { p_iri { prefix_id: 3 } o_iri { prefix_id: 2 } } } rows { prefix { value: "http://www.w3.org/1999/02/22-rdf-syntax-ns#" } } rows { name { value: "type" } } rows { name { value: "Nanopublication" } } rows { quad { p_iri { prefix_id: 13 } o_iri { prefix_id: 3 } } } rows { name { value: "get-fsr-types" } } rows { name { value: "description" } } rows { quad { s_iri { prefix_id: 2 } p_iri { prefix_id: 5 } o_literal { lex: "Returns one row with an SVG column: a horizontal bar chart of the number of metadata nanopublications of FAIR Supporting Resources (FSRs, including FAIR-Enabling Resources) per FSR type. The types are read dynamically from the FIP Ontology: every class in the fip namespace that is a (transitive) subclass of FAIR-Supporting-Resource, excluding the structural classes (FER/FSR, Available-*, *-to-be-Developed). Type labels come from the published class definitions. Example nanopublications and invalidated nanopublications are excluded. Bars are sorted by count, and each label links root-relatively to the part page of the FSR type (/part?id=...), where the resources of that type are shown. Bar positions are computed with rank subqueries, so the output is deterministic. This is the query behind the \"FSR types\" SVG view, and it replaces the tabular version of this query." } g_iri { prefix_id: 2 name_id: 4 } } } rows { name { value: "license" } } rows { prefix { value: "http://www.apache.org/licenses/" } } rows { name { value: "LICENSE-2.0" } } rows { quad { p_iri { prefix_id: 5 name_id: 14 } o_iri { prefix_id: 14 } } } rows { name { value: "grlc-query" } } rows { quad { p_iri { prefix_id: 13 name_id: 10 } o_iri { prefix_id: 4 name_id: 16 } } } rows { name { value: "label" } } rows { quad { p_iri { prefix_id: 9 } o_literal { lex: "Get FSR types as SVG" } } } rows { name { value: "endpoint" } } rows { prefix { value: "https://w3id.org/np/l/nanopub-query-1.1/repo/" } } rows { name { value: "full" } } rows { quad { p_iri { prefix_id: 4 } o_iri { prefix_id: 15 } } } rows { name { value: "sparql" } } rows { quad { p_iri { prefix_id: 4 } o_literal { lex: "prefix rdfs: \nprefix np: \nprefix npa: \nprefix npx: \nprefix dct: \nprefix fip: \n\nselect ?svg where {\n # One bar per FSR type, ordered by count: rank is the number of types scoring at\n # least as high, which gives the row its y position.\n { select (group_concat(?bar; separator=\"\") as ?bars) (max(?rank) as ?k) where {\n { select ?type ?label ?n (max(?n2) as ?max) (count(*) as ?rank) where {\n { select distinct ?type (min(?label_x) as ?label) (count(distinct ?N_np) as ?n) where {\n { select distinct ?type (min(?tl) as ?label_x) where {\n ?type rdfs:subClassOf+ fip:FAIR-Supporting-Resource .\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 graph npa:graph { ?tnpa npx:introduces ?type ; np:hasAssertion ?taa . }\n graph ?taa { ?type rdfs:label ?tl . }\n } group by ?type }\n graph npa:graph {\n ?N_np npx:hasNanopubType ?type ; npx:hasNanopubType ?fsrtypea ; npa:hasValidSignatureForPublicKey ?pka ; dct:created ?datea .\n values ?fsrtypea { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource }\n filter(str(?datea) > \"2022\")\n filter not exists { ?N_np npx:hasNanopubType npx:ExampleNanopub . }\n filter not exists { ?xa npx:invalidates ?N_np ; npa:hasValidSignatureForPublicKey ?pka . }\n }\n } group by ?type }\n { select distinct ?type2 (min(?label2_x) as ?label2) (count(distinct ?n2_np) as ?n2) where {\n { select distinct ?type2 (min(?tl) as ?label2_x) where {\n ?type2 rdfs:subClassOf+ fip:FAIR-Supporting-Resource .\n filter(strstarts(str(?type2), \"https://w3id.org/fair/fip/terms/\"))\n filter(?type2 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 graph npa:graph { ?tnpc npx:introduces ?type2 ; np:hasAssertion ?tac . }\n graph ?tac { ?type2 rdfs:label ?tl . }\n } group by ?type2 }\n graph npa:graph {\n ?n2_np npx:hasNanopubType ?type2 ; npx:hasNanopubType ?fsrtypec ; npa:hasValidSignatureForPublicKey ?pkc ; dct:created ?datec .\n values ?fsrtypec { fip:FAIR-Enabling-Resource fip:FAIR-Supporting-Resource }\n filter(str(?datec) > \"2022\")\n filter not exists { ?n2_np npx:hasNanopubType npx:ExampleNanopub . }\n filter not exists { ?xc npx:invalidates ?n2_np ; npa:hasValidSignatureForPublicKey ?pkc . }\n }\n } group by ?type2 }\n filter(?n2 > ?n || (?n2 = ?n && str(?type2) <= str(?type)))\n } group by ?type ?label ?n }\n bind(34 + (?rank - 1) * 20 as ?y)\n bind(round(280 * ?n / ?max) as ?w)\n bind(replace(replace(replace(?label, \"&\", \"&\"), \"<\", \"<\"), \">\", \">\") as ?lbl)\n bind(concat(\n \'\', ?lbl, \'\',\n \'\',\n \'\', str(?n), \'\'\n ) as ?bar)\n } }\n bind(34 + ?k * 20 + 8 as ?height)\n bind(concat(\n \'\',\n \'FAIR Supporting Resources per type\',\n ?bars,\n \'\') as ?svg)\n}" } } } rows { name { value: "wasAttributedTo" } } rows { name { value: "0000-0002-1267-0234" } } rows { quad { s_iri { prefix_id: 2 name_id: 4 } p_iri { prefix_id: 11 name_id: 21 } o_iri { prefix_id: 10 } g_iri { prefix_id: 2 name_id: 7 } } } rows { name { value: "name" } } rows { quad { s_iri { prefix_id: 10 name_id: 22 } p_iri { prefix_id: 12 } o_literal { lex: "Tobias Kuhn" } g_iri { prefix_id: 2 name_id: 9 } } } rows { name { value: "created" } } rows { datatype { value: "http://www.w3.org/2001/XMLSchema#dateTime" } } rows { quad { s_iri { prefix_id: 1 name_id: 1 } p_iri { prefix_id: 5 name_id: 24 } o_literal { lex: "2026-09-18T09:46:48Z" datatype: 1 } } } rows { name { value: "creator" } } rows { prefix { value: "https://w3id.org/np/RAlgF8um78nQxxJhJTNMZ3tpWJOntfTULJWMWr5Fmo4zU/" } } rows { name { value: "fairimpl-bot" } } rows { quad { p_iri { } o_iri { prefix_id: 16 } } } rows { prefix { id: 6 value: "https://creativecommons.org/licenses/by/4.0/" } } rows { quad { p_iri { prefix_id: 5 name_id: 14 } o_iri { prefix_id: 6 name_id: 2 } } } rows { name { value: "embeds" } } rows { quad { p_iri { prefix_id: 7 name_id: 27 } o_iri { prefix_id: 2 name_id: 12 } } } rows { name { value: "supersedes" } } rows { name { value: "RA1wz7dPmE5sjmddMclgHGCXdXCyXnYTUd3a7-sQqZ6Bw" } } rows { quad { p_iri { prefix_id: 7 name_id: 28 } o_iri { prefix_id: 1 } } } rows { quad { p_iri { prefix_id: 9 name_id: 17 } o_literal { lex: "Get FSR types as SVG" } } } rows { prefix { id: 8 value: "https://w3id.org/np/o/ntemplate/" } } rows { name { value: "wasCreatedFromProvenanceTemplate" } } rows { name { value: "RA7lSq6MuK_TIC6JMSHvLtee3lpLoZDOqLJCLXevnrPoU" } } rows { quad { p_iri { prefix_id: 8 name_id: 30 } o_iri { prefix_id: 1 } } } rows { name { value: "wasCreatedFromPubinfoTemplate" } } rows { name { value: "RACJ58Gvyn91LqCKIO9zu1eijDQIeEff28iyDrJgjSJF8" } } rows { quad { p_iri { prefix_id: 8 } o_iri { prefix_id: 1 } } } rows { name { value: "RAoTD7udB2KtUuOuAe74tJi1t3VzK0DyWS7rYVAq1GRvw" } } rows { quad { o_iri { } } } rows { name { value: "RAukAcWHRDlkqxk7H2XNSegc1WnHI569INvNr-xdptDGI" } } rows { quad { o_iri { } } } rows { name { value: "wasCreatedFromTemplate" } } rows { name { value: "RAEFAt-QcFK0ZhqfvlsmS10BnzGJA0xwOICZXkO-ai87k" } } rows { quad { p_iri { prefix_id: 8 } o_iri { prefix_id: 1 } } } rows { name { value: "sig" } } rows { name { value: "hasAlgorithm" } } rows { quad { s_iri { prefix_id: 2 } p_iri { prefix_id: 7 } o_literal { lex: "RSA" } } } rows { name { value: "hasPublicKey" } } rows { quad { p_iri { } o_literal { lex: "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzZAkv4Mu1YSUxQMriBnhYunqosX5wpuQ3FjUyzW8wTC51wjCmhsChyhS+mCx7Od+2MTDpdhxDWA+pH1r9AX508X2rIY/sbpMS+pd56e0qKPQ0t4folln1TgamPN9iOlY/yLc2x27AdipWIGXUdtL2iAcb+P/Y5dQS2AkHMS3lP2e5JBL5/bD/10qvTLKvdsqIKts8qjuLpxr9CFbsS2gLjMkXL5D2IsJ0cL5sgmIfS1inLVxIfXrS/OgqYNFqeNznUYCVWfo0g7DKjnjiICz3omeQeJFLYwlJ6PhUhYDQS6O318DGwUCwhnuXbBbwL9evZa2I/0Pwu5xpZdNLYJ5UwIDAQAB" } } } rows { name { value: "hasSignature" } } rows { quad { p_iri { } o_literal { lex: "Ha8QdbfYRHguE6J+x/z7xHosvHU1oMXHPl8FOSsEt+qFrRdRxKhhxGuHuuiRPvEk3WadADhJlxglmb4FGDRFZhNec022R9m7Lu2MEouUVPs1Bh3eF7ZKJ3Y1n+V07UzRkTs+LygcVDKuasyhbPBcfoDf0t+cXXWcGJGCMBuJJJD7i8ZiGY/j8vEo5c/r5ITIiM7LgDvvFKrGg+RXjV0nMy2rmjX4Gs7htfeApkmAyeHboCg6FTp45Gv4mHslMZJRhcyBXfF8FJB28v59+vd84WXZJoC2fQSmxmsIW8bPe/cuWj1GIwn96EgmrV8Kc8Z/gcqzAKiI2VflUjsaQ7FYjQ==" } } } rows { name { value: "hasSignatureTarget" } } rows { quad { p_iri { } o_iri { prefix_id: 1 name_id: 1 } } } rows { name { value: "signedBy" } } rows { quad { p_iri { prefix_id: 7 name_id: 43 } o_iri { prefix_id: 16 name_id: 26 } } }