@prefix this: . @prefix sub: . @prefix np: . @prefix grlc: . @prefix dct: . @prefix nt: . @prefix npx: . @prefix xsd: . @prefix rdfs: . @prefix orcid: . @prefix prov: . @prefix foaf: . sub:Head { this: a np:Nanopublication; np:hasAssertion sub:assertion; np:hasProvenance sub:provenance; np:hasPublicationInfo sub:pubinfo . } sub:assertion { sub:get-term-details a grlc:grlc-query; dct:description "Given a glossary term (a SKOS concept, typically identified by its Wikidata URI), this query returns its details as property-value rows: its type, label, and definition, the resources that reference it in their glossary via dct:references, and the statements (AIDA sentences) that are about it. Recognized properties get human-readable labels and are shown first."; dct:license ; rdfs:label "Get term details"; grlc:endpoint ; grlc:sparql """prefix rdf: prefix rdfs: prefix dct: prefix np: prefix npa: prefix npx: prefix skos: prefix hycl: select ?property ?property_label ?value (min(?vlabel) as ?value_label) where { { graph npa:graph { ?np np:hasAssertion ?a ; npa:hasValidSignatureForPublicKey ?pk . } filter not exists { graph npa:graph { ?inv npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pk . } } graph ?a { ?_term_iri ?property ?value . } bind(if(?value = skos:Concept, \"Concept\", ?xu) as ?vlabel) bind( if(?property = rdf:type, \"Type\", if(?property = rdfs:label, \"Label\", if(?property = skos:definition, \"Definition\", str(?property)))) as ?property_label) bind( if(?property = rdf:type, 0, if(?property = rdfs:label, 1, if(?property = skos:definition, 2, 40))) as ?sort) } union { graph npa:graph { ?rnp np:hasAssertion ?ra ; npa:hasValidSignatureForPublicKey ?rpk . } filter not exists { graph npa:graph { ?rinv npx:invalidates ?rnp ; npa:hasValidSignatureForPublicKey ?rpk . } } graph ?ra { ?value dct:references ?_term_iri . } bind(dct:references as ?property) bind(\"Referenced by\" as ?property_label) bind(50 as ?sort) optional { graph npa:graph { ?lnp np:hasAssertion ?la ; npa:hasValidSignatureForPublicKey ?lpk . } filter not exists { graph npa:graph { ?linv npx:invalidates ?lnp ; npa:hasValidSignatureForPublicKey ?lpk . } } graph ?la { ?value rdfs:label ?vlabel . } } } union { graph npa:graph { ?snp np:hasAssertion ?sa ; npa:hasValidSignatureForPublicKey ?spk . } filter not exists { graph npa:graph { ?sinv npx:invalidates ?snp ; npa:hasValidSignatureForPublicKey ?spk . } } graph ?sa { ?value ?aboutProp ?_term_iri . ?value a hycl:AIDA-Sentence . } filter(?aboutProp in (, )) bind(?aboutProp as ?property) bind(\"Topic of statement\" as ?property_label) bind(60 as ?sort) optional { graph npa:graph { ?snp rdfs:label ?vlabel . } } } } group by ?property ?property_label ?value ?sort order by ?sort str(?value)""" . } 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-07-06T14:36:37Z"^^xsd:dateTime; dct:creator orcid:0000-0002-1267-0234; dct:license ; npx:embeds sub:get-term-details; rdfs:label "Get term details"; nt:wasCreatedFromProvenanceTemplate ; nt:wasCreatedFromPubinfoTemplate , ; nt:wasCreatedFromTemplate . sub:sig npx:hasAlgorithm "RSA"; npx:hasPublicKey "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB"; npx:hasSignature "mgpf0/e19sP97X2PSbql4Ts330t2b5IaLgCo1QioMdsUFLQPUdVFhjojvyRZEz6zbDOtzNmLoQ3rlPXpNQQE2Qpw0CvdvV30sTehyvP/8M70s7DoCR9Nbgw8nSdfYGOOjtE31VYKKJK1SqppGs9SxC1ewY99UVTo1OvpsZGKSY0="; npx:hasSignatureTarget this:; npx:signedBy orcid:0000-0002-1267-0234 . }