@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-news-topic-proposals a grlc:grlc-query; dct:description "Returns the news topics proposed for a given Space: the topic and its description, the Wikipedia article it is the primary topic of, the news articles covering it and how many there are, and the Wikidata item if one has been recorded. Topics with no Wikidata item are still open proposals. Results are ordered by news coverage first, so the best-attested proposals come top. The optional minSources parameter applies a coverage threshold: pass minSources=3 to see only topics that have already appeared in at least three news articles. When it is omitted, no threshold is applied."; dct:license ; rdfs:label "Get news topic proposals for Space"; grlc:endpoint ; grlc:sparql """prefix rdfs: prefix dct: prefix np: prefix npa: prefix npx: prefix schema: prefix foaf: prefix owl: prefix xsd: select ?topic ?topic_label ?description ?article ?article_label (group_concat(distinct str(?source); separator=\" \") as ?sources_multi_iri) (count(distinct ?source) as ?source_count) ?wikidata ?wikidata_label ?date ?override_target ?np ?np_label where { graph npa:graph { ?np npa:hasValidSignatureForPublicKeyHash ?pubkey . filter not exists { ?inv npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . } ?np dct:created ?date . ?np np:hasAssertion ?a . } graph ?a { values ?_space_multi_iri {} ?a schema:about ?_space_multi_iri . ?topic rdfs:label ?topic_label . ?topic foaf:isPrimaryTopicOf|dct:isReferencedBy ?anySource . } optional { graph ?a { ?topic dct:description ?description } } optional { graph ?a { ?topic foaf:isPrimaryTopicOf ?article } } optional { graph ?a { ?topic dct:isReferencedBy ?source } } optional { graph ?a { ?topic owl:sameAs ?wikidata } } bind(replace(replace(coalesce(str(?article), \"\"), \"^.*/wiki/\", \"\"), \"_\", \" \") as ?article_label) bind(replace(coalesce(str(?wikidata), \"\"), \"^.*/entity/\", \"\") as ?wikidata_label) bind(str(?np) as ?override_target) bind(\"^\" as ?np_label) } group by ?topic ?topic_label ?description ?article ?article_label ?wikidata ?wikidata_label ?date ?override_target ?np ?np_label having(coalesce(count(distinct ?source) >= xsd:integer(?__minSources), true)) order by desc(?source_count) desc(?date)""" . } 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-08-26T11:46:49Z"^^xsd:dateTime; dct:creator orcid:0000-0002-1267-0234; dct:license ; npx:embeds sub:get-news-topic-proposals; nt:wasCreatedFromProvenanceTemplate ; nt:wasCreatedFromPubinfoTemplate , ; nt:wasCreatedFromTemplate . sub:sig npx:hasAlgorithm "RSA"; npx:hasPublicKey "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB"; npx:hasSignature "GnfkWUNb60O929/cpQ9ZjV+dg4Uz6wBn/zWQsf4+OSHmyjqf8gYfTkd+nB+iebeHocki7VnolvCWJsbZ1vY0E9CZAJTsR+fHFWKkybUJF/Jed8xxiJa5IMUZ9ubvDGbQ+ryGglDj6EbzWbnwxRN8Q0GC/Lmf9e+FSIU9tFrf1yM="; npx:hasSignatureTarget this:; npx:signedBy orcid:0000-0002-1267-0234 . }