@prefix this: . @prefix sub: . @prefix np: . @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-3pff-events-iris a ; dct:description "Returns a list of all events related to the Three Point FAIRification Framework (3PFF), with IRIs output directly (not pre-rendered as HTML). Multi-value organizer/facilitator/more-info columns carry their IRIs alongside a parallel label companion column (organizer and facilitator labels resolved from the trust repository, falling back to the URI's local name). Variant of get-3pff-events-html intended for tabular views that render IRIs and labels natively (e.g. Nanodash). The final 'np' column uses '^' labels to trigger the per-row dropdown menu."; dct:license ; rdfs:label "Get 3PFF Events (IRIs)"; ; """prefix rdfs: prefix np: prefix npa: prefix npx: prefix xsd: prefix dct: prefix prov: prefix foaf: prefix tpff: prefix schema: select (?event as ?Event_ID) (?eventShortName as ?Event_ID_label) (?eventLongName as ?Event_Name) (?eventDate as ?Date) ?Organizers_multi_iri ?Organizers_label_multi ?Facilitators_multi_iri ?Facilitators_label_multi ?More_Info_multi_iri ?More_Info_label_multi ?np (\"^\" as ?np_label) where { graph npa:graph { ?np npa:hasValidSignatureForPublicKey ?pubkey . ?np np:hasAssertion ?assertion . ?np npx:introduces ?event . filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKey ?pubkey . } } graph ?assertion { ?event a tpff:3PFF-event . ?event rdfs:label ?eventName . optional { ?event dct:date ?dateDct . } optional { ?event schema:startDate ?dateSchema . } } bind(coalesce(?dateDct, strBefore(str(?dateSchema), \"T\")) as ?eventDate) bind(replace(str(?eventName), ' ?\\\\|.*$', '') as ?eventShortName) bind(replace(str(?eventName), '^.*\\\\| ?(.*)$', '$1') as ?eventLongName) optional { select ?event (group_concat(str(?org); separator=\" \") as ?Organizers_multi_iri) (group_concat(?orgLabel; separator=\"\\n\") as ?Organizers_label_multi) where { select ?event ?org (sample(?orgName) as ?orgLabel) where { graph npa:graph { ?onp npx:introduces ?event ; np:hasAssertion ?oa ; npa:hasValidSignatureForPublicKey ?opk . filter not exists { ?onpx npx:invalidates ?onp ; npa:hasValidSignatureForPublicKey ?opk . } } graph ?oa { ?event a tpff:3PFF-event . ?event tpff:has-event-organizer ?org . } bind(replace(replace(str(?org), \"/$\", \"\"), \"^.*[/#]\", \"\") as ?orgLocal) optional { service { graph npa:graph { npa:hasCurrentTrustState ?ts . } graph ?ts { ?org foaf:name ?orgFoaf . } } } bind(coalesce(?orgFoaf, ?orgLocal) as ?orgName) } group by ?event ?org } group by ?event } optional { select ?event (group_concat(str(?fac); separator=\" \") as ?Facilitators_multi_iri) (group_concat(?facLabel; separator=\"\\n\") as ?Facilitators_label_multi) where { select ?event ?fac (sample(?facName) as ?facLabel) where { graph npa:graph { ?fnp npx:introduces ?event ; np:hasAssertion ?fa ; npa:hasValidSignatureForPublicKey ?fpk . filter not exists { ?fnpx npx:invalidates ?fnp ; npa:hasValidSignatureForPublicKey ?fpk . } } graph ?fa { ?event a tpff:3PFF-event . ?event tpff:has-event-facilitator ?fac . } bind(replace(replace(str(?fac), \"/$\", \"\"), \"^.*[/#]\", \"\") as ?facLocal) optional { service { graph npa:graph { npa:hasCurrentTrustState ?fts . } graph ?fts { ?fac foaf:name ?facFoaf . } } } bind(coalesce(?facFoaf, ?facLocal) as ?facName) } group by ?event ?fac } group by ?event } optional { select ?event (group_concat(str(?link); separator=\" \") as ?More_Info_multi_iri) (group_concat(?linkLabel; separator=\"\\n\") as ?More_Info_label_multi) where { select ?event ?link (sample(?linkLocal) as ?linkLabel) where { graph npa:graph { ?lnp npx:introduces ?event ; np:hasAssertion ?la ; npa:hasValidSignatureForPublicKey ?lpk . filter not exists { ?lnpx npx:invalidates ?lnp ; npa:hasValidSignatureForPublicKey ?lpk . } } graph ?la { ?event a tpff:3PFF-event . ?event rdfs:seeAlso ?link . } bind(replace(replace(str(?link), \"/$\", \"\"), \"^.*[/#]\", \"\") as ?linkLocal) } group by ?event ?link } group by ?event } } order by desc(?eventDate)""" . } sub:provenance { sub:assertion prov:wasAttributedTo orcid:0000-0002-1267-0234; prov:wasDerivedFrom . } sub:pubinfo { orcid:0000-0002-1267-0234 foaf:name "Tobias Kuhn" . this: dct:created "2026-06-30T07:42:34Z"^^xsd:dateTime; dct:creator orcid:0000-0002-1267-0234; dct:license ; npx:embeds sub:get-3pff-events-iris; rdfs:label "Get 3PFF Events (IRIs)"; nt:wasCreatedFromProvenanceTemplate ; nt:wasCreatedFromPubinfoTemplate , , , ; nt:wasCreatedFromTemplate . sub:sig npx:hasAlgorithm "RSA"; npx:hasPublicKey "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB"; npx:hasSignature "V6I2jgU74RH4eg2k5EK25gGtWr5EdNYu7PmOOZuzH97e1Q4sXjQ1fAqL7ikfziwBcgiQSDCSbYC0Iti+Oct5B7B6twBtwk8j9SXTdBg6x22JMX0fVQknPnrk/MwEp8aWPzLKHt9O6R89k7WHmvcjB21UdlCtnxblt2vIQjJ2EGI="; npx:hasSignatureTarget this:; npx:signedBy orcid:0000-0002-1267-0234 . }