@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:check-nanopub-materialized a grlc:grlc-query; dct:description "This query checks whether a given nanopublication has been materialized into the current space state of the answering Nanopub Query instance, i.e. whether the authority resolver has already processed it and recorded what it grants. It returns one row if some record in the current space state was derived from the nanopublication (npa:viaNanopub), and an empty result otherwise. This is a later milestone than mere ingest, which check-nanopub-loaded probes: role grants, role revocations and other space-state changes only become visible to the space listing queries once this materialization has happened. It is designed to be as cheap as possible (two bound lookups), so it can be used to poll for the arrival of a just-published nanopublication, for example to delay a cache refresh until the publication has taken effect in the views that read the current space state. An empty result does not distinguish 'not yet materialized' from 'materialized but granting nothing', so callers must bound their polling."; dct:license ; rdfs:label "Check if a nanopublication is materialized into the current space state"; grlc:endpoint ; grlc:sparql """prefix npa: select ?record where { graph npa:graph { npa:thisRepo npa:hasCurrentSpaceState ?stateGraph . } graph ?stateGraph { ?record npa:viaNanopub ?_np_iri . } } limit 1""" . } 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-10-09T00:00:00Z"^^xsd:dateTime; dct:creator orcid:0000-0002-1267-0234; dct:license ; npx:embeds sub:check-nanopub-materialized; rdfs:label "Check if a nanopublication is materialized into the current space state"; nt:wasCreatedFromProvenanceTemplate ; nt:wasCreatedFromPubinfoTemplate ; nt:wasCreatedFromTemplate . sub:sig npx:hasAlgorithm "RSA"; npx:hasPublicKey "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB"; npx:hasSignature "lbMMPb8glCg7o0Ot+07c9p0ELHOgOkFFs7qmJQ2sYlghFW5DOkNkvUrF2+oDGJnI77InmdDw3zDaxmMM7ATsLPFjgGL96USUTtLObLaFV717ou49arWJ7Sb/vCjNl+pQuSjkY3EbNksmRjTXkOrXeyJ3hcTm0zUSQHtk9+mIvMg="; npx:hasSignatureTarget this:; npx:signedBy orcid:0000-0002-1267-0234 . }