rows { options { physical_type: PHYSICAL_STREAM_TYPE_QUADS max_name_table_size: 128 max_prefix_table_size: 16 max_datatype_table_size: 16 logical_type: LOGICAL_STREAM_TYPE_DATASETS version: 2 } } rows { prefix { value: "https://w3id.org/np/" } } rows { name { value: "RAVfB06PHhdOO8S-6bDnrvtFTmkU5PuuGGaLBTqB4u4hM" } } rows { namespace { name: "this" value { prefix_id: 1 } } } rows { prefix { value: "https://w3id.org/np/RAVfB06PHhdOO8S-6bDnrvtFTmkU5PuuGGaLBTqB4u4hM/" } } rows { name { } } rows { namespace { name: "sub" value { prefix_id: 2 } } } rows { prefix { value: "http://www.nanopub.org/nschema#" } } rows { namespace { name: "np" value { prefix_id: 3 name_id: 2 } } } rows { prefix { value: "https://w3id.org/kpxl/grlc/" } } rows { namespace { name: "grlc" value { prefix_id: 4 name_id: 2 } } } rows { prefix { value: "http://purl.org/dc/terms/" } } rows { namespace { name: "dct" value { prefix_id: 5 name_id: 2 } } } rows { prefix { value: "https://w3id.org/np/o/ntemplate/" } } rows { namespace { name: "nt" value { prefix_id: 6 name_id: 2 } } } rows { prefix { value: "http://purl.org/nanopub/x/" } } rows { namespace { name: "npx" value { prefix_id: 7 name_id: 2 } } } rows { prefix { value: "http://www.w3.org/2001/XMLSchema#" } } rows { namespace { name: "xsd" value { prefix_id: 8 name_id: 2 } } } rows { prefix { value: "http://www.w3.org/2000/01/rdf-schema#" } } rows { namespace { name: "rdfs" value { prefix_id: 9 name_id: 2 } } } rows { prefix { value: "https://orcid.org/" } } rows { namespace { name: "orcid" value { prefix_id: 10 name_id: 2 } } } rows { prefix { value: "http://www.w3.org/ns/prov#" } } rows { namespace { name: "prov" value { prefix_id: 11 name_id: 2 } } } rows { prefix { value: "http://xmlns.com/foaf/0.1/" } } rows { namespace { name: "foaf" value { prefix_id: 12 name_id: 2 } } } rows { name { value: "hasAssertion" } } rows { name { value: "assertion" } } rows { name { value: "Head" } } rows { quad { s_iri { prefix_id: 1 name_id: 1 } p_iri { prefix_id: 3 name_id: 3 } o_iri { prefix_id: 2 } g_iri { } } } rows { name { value: "hasProvenance" } } rows { name { value: "provenance" } } rows { quad { p_iri { prefix_id: 3 } o_iri { prefix_id: 2 } } } rows { name { value: "hasPublicationInfo" } } rows { name { value: "pubinfo" } } rows { quad { p_iri { prefix_id: 3 } o_iri { prefix_id: 2 } } } rows { prefix { value: "http://www.w3.org/1999/02/22-rdf-syntax-ns#" } } rows { name { value: "type" } } rows { name { value: "Nanopublication" } } rows { quad { p_iri { prefix_id: 13 } o_iri { prefix_id: 3 } } } rows { name { value: "get-ongoing-and-upcoming-events" } } rows { name { value: "description" } } rows { quad { s_iri { prefix_id: 2 } p_iri { prefix_id: 5 } o_literal { lex: "Returns all ongoing and upcoming events that are defined as Spaces, with the ones that are in progress at this moment marked as ongoing instead of a date. Start and end times are compared as points in time, so an event that only starts later today is shown with its date and not as ongoing. Events starting on the same day are listed with overarching spaces before their sub-spaces." } g_iri { prefix_id: 2 name_id: 4 } } } rows { name { value: "license" } } rows { prefix { value: "http://www.apache.org/licenses/" } } rows { name { value: "LICENSE-2.0" } } rows { quad { p_iri { prefix_id: 5 name_id: 14 } o_iri { prefix_id: 14 } } } rows { name { value: "grlc-query" } } rows { quad { p_iri { prefix_id: 13 name_id: 10 } o_iri { prefix_id: 4 name_id: 16 } } } rows { name { value: "label" } } rows { quad { p_iri { prefix_id: 9 } o_literal { lex: "Get ongoing and upcoming events" } } } rows { name { value: "endpoint" } } rows { prefix { value: "https://w3id.org/np/l/nanopub-query-1.1/repo/type/" } } rows { name { value: "8ad572d99071cc1ba0c16e54087b43594bdd9e8b2cfb62d2a0b16945fc49e53c" } } rows { quad { p_iri { prefix_id: 4 } o_iri { prefix_id: 15 } } } rows { name { value: "sparql" } } rows { quad { p_iri { prefix_id: 4 } o_literal { lex: "prefix rdfs: \nprefix dct: \nprefix np: \nprefix npa: \nprefix npx: \nprefix gen: \nprefix schema: \nprefix xsd: \n\nselect ?event ?event_label ?when ?np (\"^\" as ?np_label) where {\n graph npa:graph {\n ?np npa:hasValidSignatureForPublicKeyHash ?pubkey .\n filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . }\n filter not exists { ?np npx:hasNanopubType npx:ExampleNanopub . }\n ?np npx:introduces ?event .\n ?np np:hasAssertion ?a .\n ?np dct:created ?npDate .\n filter not exists {\n ?np2 npx:introduces ?event .\n ?np2 npa:hasValidSignatureForPublicKeyHash ?pubkey2 .\n filter not exists { ?npx2 npx:invalidates ?np2 ; npa:hasValidSignatureForPublicKeyHash ?pubkey2 . }\n ?np2 dct:created ?npDate2 .\n filter(?npDate2 > ?npDate)\n }\n }\n graph ?a {\n ?event a gen:Space .\n ?event a gen:Event .\n ?event rdfs:label ?event_label .\n ?event schema:startDate ?datetime .\n optional { ?event schema:endDate ?endDatetime . }\n }\n bind(if(exists { graph ?a { ?event gen:isSubSpaceOf ?parentSpace . } }, 1, 0) as ?subSpaceOrder)\n bind(xsd:date(substr(str(?datetime), 1, 10)) as ?date)\n bind(xsd:date(substr(str(now()), 1, 10)) as ?today)\n optional { bind(xsd:date(substr(str(?endDatetime), 1, 10)) as ?endDate) }\n bind(if(bound(?endDate), ?endDate, ?date) as ?effectiveEnd)\n filter(?effectiveEnd >= ?today)\n # Whether an event is ongoing is a question about this moment, not about the day: one that\n # starts later today has not started yet, and one that ended earlier today is over. Start\n # and end are therefore normalized to instants and compared with now(). A value carrying no\n # time counts from the start of its day (start) or to the end of it (end), and one carrying\n # no timezone is read as UTC; where even that cannot be parsed, the coalesce falls back to\n # the day-level comparison.\n bind(if(contains(str(?datetime), \"T\"), str(?datetime), concat(str(?date), \"T00:00:00\")) as ?startText)\n bind(if(regex(?startText, \"(Z|[+-][0-9][0-9]:[0-9][0-9])$\"), ?startText, concat(?startText, \"Z\")) as ?startTextTz)\n bind(xsd:dateTime(?startTextTz) as ?start)\n optional {\n bind(if(contains(str(?endDatetime), \"T\"), str(?endDatetime), concat(str(?endDate), \"T23:59:59\")) as ?endText)\n bind(if(regex(?endText, \"(Z|[+-][0-9][0-9]:[0-9][0-9])$\"), ?endText, concat(?endText, \"Z\")) as ?endTextTz)\n bind(xsd:dateTime(?endTextTz) as ?end)\n }\n bind(coalesce(?start <= now(), ?date <= ?today) as ?hasStarted)\n bind(coalesce(?end < now(), false) as ?hasEnded)\n bind(if(?hasStarted && !?hasEnded, 1, 2) as ?statusOrder)\n bind(if(?hasStarted && !?hasEnded, \"ongoing\", str(?date)) as ?when)\n} order by ?statusOrder ?date ?subSpaceOrder ?event_label" } } } rows { name { value: "wasAttributedTo" } } rows { name { value: "0000-0002-1267-0234" } } rows { quad { s_iri { prefix_id: 2 name_id: 4 } p_iri { prefix_id: 11 name_id: 21 } o_iri { prefix_id: 10 } g_iri { prefix_id: 2 name_id: 7 } } } rows { name { value: "name" } } rows { quad { s_iri { prefix_id: 10 name_id: 22 } p_iri { prefix_id: 12 } o_literal { lex: "Tobias Kuhn" } g_iri { prefix_id: 2 name_id: 9 } } } rows { name { value: "created" } } rows { datatype { value: "http://www.w3.org/2001/XMLSchema#dateTime" } } rows { quad { s_iri { prefix_id: 1 name_id: 1 } p_iri { prefix_id: 5 name_id: 24 } o_literal { lex: "2026-10-13T05:25:41Z" datatype: 1 } } } rows { name { value: "creator" } } rows { quad { p_iri { } o_iri { prefix_id: 10 name_id: 22 } } } rows { prefix { value: "https://creativecommons.org/licenses/by/4.0/" } } rows { quad { p_iri { prefix_id: 5 name_id: 14 } o_iri { prefix_id: 16 name_id: 2 } } } rows { name { value: "introduces" } } rows { quad { p_iri { prefix_id: 7 name_id: 26 } o_iri { prefix_id: 2 name_id: 12 } } } rows { name { value: "supersedes" } } rows { name { value: "RA177VGaNZhfVHwJkdZuwWwQ0LP9wGImQbRAlJIPZqfRQ" } } rows { quad { p_iri { prefix_id: 7 name_id: 27 } o_iri { prefix_id: 1 } } } rows { name { value: "wasCreatedFromProvenanceTemplate" } } rows { name { value: "RA7lSq6MuK_TIC6JMSHvLtee3lpLoZDOqLJCLXevnrPoU" } } rows { quad { p_iri { prefix_id: 6 } o_iri { prefix_id: 1 } } } rows { name { value: "wasCreatedFromPubinfoTemplate" } } rows { name { value: "RA0J4vUn_dekg-U1kK3AOEt02p9mT2WO03uGxLDec1jLw" } } rows { quad { p_iri { prefix_id: 6 } o_iri { prefix_id: 1 } } } rows { name { value: "RAoTD7udB2KtUuOuAe74tJi1t3VzK0DyWS7rYVAq1GRvw" } } rows { quad { o_iri { } } } rows { name { value: "RAukAcWHRDlkqxk7H2XNSegc1WnHI569INvNr-xdptDGI" } } rows { quad { o_iri { } } } rows { name { value: "wasCreatedFromTemplate" } } rows { name { value: "RAEFAt-QcFK0ZhqfvlsmS10BnzGJA0xwOICZXkO-ai87k" } } rows { quad { p_iri { prefix_id: 6 } o_iri { prefix_id: 1 } } } rows { name { value: "sig" } } rows { name { value: "hasAlgorithm" } } rows { quad { s_iri { prefix_id: 2 } p_iri { prefix_id: 7 } o_literal { lex: "RSA" } } } rows { name { value: "hasPublicKey" } } rows { quad { p_iri { } o_literal { lex: "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB" } } } rows { name { value: "hasSignature" } } rows { quad { p_iri { } o_literal { lex: "p/SpzOoigtGj21Ws59iB139iOVV93vkKhjLBrClu1FP2t1/K0GLFbelgRgsmB6UboPsvOEVl5cQYPt8wK0wMDhbKHYzwuU82jTeKOjcPGoM0oy7S3HMGJ0qzf35muoODSLqMWFfSWtEzy3uK+jDl06AdBd6+qJf3n2F7g0PNsAo=" } } } rows { name { value: "hasSignatureTarget" } } rows { quad { p_iri { } o_iri { prefix_id: 1 name_id: 1 } } } rows { name { value: "signedBy" } } rows { quad { p_iri { prefix_id: 7 name_id: 42 } o_iri { prefix_id: 10 name_id: 22 } } }