[ { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514/assertion", "@graph": [ { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514/get-all-templates", "http://purl.org/dc/terms/description": [ { "@value": "Returns all assertion templates with their label, tags, creator and date, ordered by descending date. Supports both template identity shapes: for templates with embedded identity (anchored via the npx:embeds triple), the returned template IRI is the embedded template node (the IRI external references should carry) and label/tags are read off that node; for legacy templates, the nanopub URI is returned and label/tags are read off the assertion graph node. Multiple tags are concatenated into one multi-value column, and dual labels collapse to one (untagged-language label preferred). Governed version pairs are deduplicated: a version declaring dct:isVersionOf plus gen:governedBy is listed only if it is the current governed winner of its (kind, space) pair -- the newest non-invalidated version signed by a current member+ of the governing space, with the kind validated as maintained by that space (computed against the spaces repo, mirroring the get-latest-governed-version resolver). A governed version whose pair does not validate is kept (inert gen:governedBy); non-governed versions are unaffected." } ], "http://purl.org/dc/terms/license": [ { "@id": "http://www.apache.org/licenses/LICENSE-2.0" } ], "@type": [ "https://w3id.org/kpxl/grlc/grlc-query" ], "http://www.w3.org/2000/01/rdf-schema#label": [ { "@value": "Get all templates" } ], "https://w3id.org/kpxl/grlc/endpoint": [ { "@id": "https://w3id.org/np/l/nanopub-query-1.1/repo/type/79342356d3a68063a627e83ac34b376479e438abb8a4c4b27d49f845f537dc8d" } ], "https://w3id.org/kpxl/grlc/sparql": [ { "@value": "prefix rdfs: \nprefix dct: \nprefix np: \nprefix npa: \nprefix npx: \nprefix nt: \nprefix gen: \n\nselect ?template_iri (coalesce(min(?ulabel), min(?anylabel)) as ?template_iri_label) (group_concat(distinct replace(replace(str(?tag), \"\\\\\\\\\", \"\\\\\\\\\\\\\\\\\"), \"[\\r\\n]+\", \"\\\\\\\\n\"); separator=\"\\n\") as ?tags_multi) ?creator ?date ?np (\"^\" as ?np_label) where {\n graph npa:graph {\n ?np npa:hasValidSignatureForPublicKey ?pubkey .\n filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . }\n ?np npx:hasNanopubType nt:AssertionTemplate .\n ?np dct:created ?date .\n ?np np:hasAssertion ?a .\n optional { ?np npx:signedBy ?creator . }\n }\n optional {\n graph npa:graph { ?np npx:embeds ?tnode . }\n graph ?a { ?tnode a nt:AssertionTemplate . }\n }\n bind(coalesce(?tnode, ?a) as ?t)\n bind(if(?t = ?a, ?np, ?t) as ?template_iri)\n optional { graph ?a { ?t rdfs:label ?ulabel . filter(lang(?ulabel) = \"\") } }\n optional { graph ?a { ?t rdfs:label ?anylabel } }\n optional { graph ?a { ?t nt:hasTag ?tag . } }\n filter not exists { graph ?a { ?t a nt:UnlistedTemplate } }\n\n optional {\n graph ?a { ?t dct:isVersionOf ?kind ; gen:governedBy ?space . }\n {\n select ?kind ?space (max(concat(str(?gDate), \"|\", str(?gNp))) as ?winner) where {\n graph npa:graph {\n ?gNp npa:hasValidSignatureForPublicKeyHash ?gPubkeyhash ;\n dct:created ?gDate ;\n npx:embeds ?gVersion ;\n np:hasAssertion ?gA .\n filter not exists { ?gInv npx:invalidates ?gNp ; npa:hasValidSignatureForPublicKeyHash ?gPubkeyhash . }\n }\n graph ?gA { ?gVersion dct:isVersionOf ?kind ; gen:governedBy ?space . }\n service {\n graph npa:graph { npa:thisRepo npa:hasCurrentSpaceState ?stateG . }\n graph ?stateG {\n ?kind npa:isMaintainedBy ?space ; npa:hasGoverningSpaceRef ?gRef .\n ?gRi a gen:RoleInstantiation ; npa:forSpace ?space ; npa:forSpaceRef ?gRef ;\n npa:hasRoleType ?gTier ; npa:forAgent ?gAgent .\n filter(?gTier = gen:AdminRole || ?gTier = gen:MaintainerRole || ?gTier = gen:MemberRole)\n ?gAcct a npa:AccountState ; npa:agent ?gAgent ; npa:pubkey ?gPubkeyhash .\n }\n }\n } group by ?kind ?space\n }\n }\n filter( !bound(?kind) || !bound(?winner) || concat(str(?date), \"|\", str(?np)) = ?winner )\n} group by ?template_iri ?creator ?date ?np\norder by desc(?date)" } ] } ] }, { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514/Head", "@graph": [ { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514", "http://www.nanopub.org/nschema#hasAssertion": [ { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514/assertion" } ], "http://www.nanopub.org/nschema#hasProvenance": [ { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514/provenance" } ], "http://www.nanopub.org/nschema#hasPublicationInfo": [ { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514/pubinfo" } ], "@type": [ "http://www.nanopub.org/nschema#Nanopublication" ] } ] }, { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514/provenance", "@graph": [ { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514/assertion", "http://www.w3.org/ns/prov#wasAttributedTo": [ { "@id": "https://orcid.org/0000-0002-1267-0234" } ] } ] }, { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514/pubinfo", "@graph": [ { "@id": "https://orcid.org/0000-0002-1267-0234", "http://xmlns.com/foaf/0.1/name": [ { "@value": "Tobias Kuhn" } ] }, { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514", "http://purl.org/dc/terms/created": [ { "@value": "2026-07-09T13:04:41Z", "@type": "http://www.w3.org/2001/XMLSchema#dateTime" } ], "http://purl.org/dc/terms/creator": [ { "@id": "https://orcid.org/0000-0002-1267-0234" } ], "http://purl.org/dc/terms/license": [ { "@id": "https://creativecommons.org/licenses/by/4.0/" } ], "http://purl.org/nanopub/x/embeds": [ { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514/get-all-templates" } ], "http://purl.org/nanopub/x/supersedes": [ { "@id": "https://w3id.org/np/RA7HCpPKDuU9MlnakZE7QHomIFsj-Nk5GwnConWniI2js" } ], "https://w3id.org/np/o/ntemplate/wasCreatedFromProvenanceTemplate": [ { "@id": "https://w3id.org/np/RA7lSq6MuK_TIC6JMSHvLtee3lpLoZDOqLJCLXevnrPoU" } ], "https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate": [ { "@id": "https://w3id.org/np/RA0J4vUn_dekg-U1kK3AOEt02p9mT2WO03uGxLDec1jLw" }, { "@id": "https://w3id.org/np/RAukAcWHRDlkqxk7H2XNSegc1WnHI569INvNr-xdptDGI" } ], "https://w3id.org/np/o/ntemplate/wasCreatedFromTemplate": [ { "@id": "https://w3id.org/np/RAEFAt-QcFK0ZhqfvlsmS10BnzGJA0xwOICZXkO-ai87k" } ] }, { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514/sig", "http://purl.org/nanopub/x/hasAlgorithm": [ { "@value": "RSA" } ], "http://purl.org/nanopub/x/hasPublicKey": [ { "@value": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB" } ], "http://purl.org/nanopub/x/hasSignature": [ { "@value": "DYNXtsmwTDKYtTuVVf7d7RVUsNWLo3NQFNuPgHlSZTRXsdxj5y+iPR7+wO4XwnRK29AHeAPe/kqzt5XGhCpl2ion85Nfk6l6CPW3cpT+EvM/BA8XFkeJgfiL3F1wg31XddQlRH2L1WNLt4M0FpzhRsaYAWk7D9p/nb5FVE/kAbg=" } ], "http://purl.org/nanopub/x/hasSignatureTarget": [ { "@id": "https://w3id.org/np/RAMwJesaFD-BwtWcEdoL0lE8O8UWm4kz1MJPZ979Oz514" } ], "http://purl.org/nanopub/x/signedBy": [ { "@id": "https://orcid.org/0000-0002-1267-0234" } ] } ] } ]