https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/Head
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
http://www.nanopub.org/nschema#hasAssertion
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/assertion
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
http://www.nanopub.org/nschema#hasProvenance
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/provenance
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
http://www.nanopub.org/nschema#hasPublicationInfo
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/pubinfo
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
http://www.w3.org/1999/02/22-rdf-syntax-ns#type
http://www.nanopub.org/nschema#Nanopublication
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/assertion
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/get-presentation-details
http://purl.org/dc/terms/description
Returns the details of a presentation or poster, laid out for reading rather than as a raw property dump: authors (and speakers) are resolved to names and joined into a single row, and the start and end date/time are combined into one 'When' value - a plain date and time range when both fall on the same day, both dates spelled out when they do not. Legacy predicates (dct:date, dct:creator, and the http://schema.org/ forms) are recognised alongside the current ones, and any predicate not recognised is still listed, so nothing in the assertion is hidden. Known properties are shown first. The rdf:type row is omitted for a plain presentation, whose type the panel's own title already gives, and kept for anything else such as a poster. Where a talk records a schema:position - its place in the running order of a session whose talks all share the session's start and end - that is shown as an Order row directly after When, with the highest position in the same slot as the total, so a session whose first talk is not yet published still reads correctly. A final row links to the nanopublication that defines the presentation, labelled with the first ten characters of its trusty URI. Values are returned in a single multi-valued column so that each one renders as whatever it is: authors and speakers as links to the people themselves, with their names as the link text, and the rest as plain text. The property and value columns carry no header, the property naming each row.
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/get-presentation-details
http://purl.org/dc/terms/license
http://www.apache.org/licenses/LICENSE-2.0
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/get-presentation-details
http://www.w3.org/1999/02/22-rdf-syntax-ns#type
https://w3id.org/kpxl/grlc/grlc-query
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/get-presentation-details
http://www.w3.org/2000/01/rdf-schema#label
Get presentation details
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/get-presentation-details
https://w3id.org/kpxl/grlc/endpoint
https://w3id.org/np/l/nanopub-query-1.1/repo/full
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/get-presentation-details
https://w3id.org/kpxl/grlc/sparql
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
prefix dct: <http://purl.org/dc/terms/>
prefix np: <http://www.nanopub.org/nschema#>
prefix npa: <http://purl.org/nanopub/admin/>
prefix npx: <http://purl.org/nanopub/x/>
prefix wd: <http://www.wikidata.org/entity/>
prefix schema: <https://schema.org/>
prefix pav: <http://purl.org/pav/>
prefix foaf: <http://xmlns.com/foaf/0.1/>
prefix gen: <https://w3id.org/kpxl/gen/terms/>
select ?property_noheader ?property_label ?value_multi_val_noheader ?value_label_multi where {
bind(?_resourceNp_iri as ?np)
graph npa:graph {
?np npa:hasValidSignatureForPublicKeyHash ?pubkey .
filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . }
?np np:hasAssertion ?a .
?np npx:introduces ?_resource_iri .
}
{
graph ?a { ?_resource_iri rdf:type ?value_multi_val_noheader }
filter(?value_multi_val_noheader != wd:Q604733)
bind(0 as ?sort) bind(rdf:type as ?property_noheader) bind("Type" as ?property_label)
bind(if(?value_multi_val_noheader = gen:PosterPresentation, "Poster presentation", "") as ?value_label_multi)
} union {
graph ?a { ?_resource_iri rdfs:label ?value_multi_val_noheader }
bind(10 as ?sort) bind(rdfs:label as ?property_noheader) bind("Title" as ?property_label)
} union {
select ?sort ?property_noheader ?property_label
(group_concat(distinct ?personIri ; separator="\n") as ?value_multi_val_noheader)
(group_concat(distinct ?who ; separator="\n") as ?value_label_multi)
where {
graph npa:graph { ?_resourceNp_iri np:hasAssertion ?spa ; np:hasPublicationInfo ?sppi . }
graph ?spa { ?_resource_iri wd:P823 ?person }
optional { graph ?sppi { ?person foaf:name ?pname } }
optional { graph ?spa { ?person rdfs:label ?plabel } }
bind(coalesce(?pname, ?plabel, str(?person)) as ?who)
bind(str(?person) as ?personIri)
bind(20 as ?sort) bind(wd:P823 as ?property_noheader) bind("Speaker" as ?property_label)
} group by ?sort ?property_noheader ?property_label
} union {
select ?sort ?property_noheader ?property_label
(group_concat(distinct ?personIri ; separator="\n") as ?value_multi_val_noheader)
(group_concat(distinct ?who ; separator="\n") as ?value_label_multi)
where {
graph npa:graph { ?_resourceNp_iri np:hasAssertion ?aua ; np:hasPublicationInfo ?aupi . }
values ?authorPred { pav:authoredBy dct:creator }
graph ?aua { ?_resource_iri ?authorPred ?person }
optional { graph ?aupi { ?person foaf:name ?pname } }
optional { graph ?aua { ?person rdfs:label ?plabel } }
bind(coalesce(?pname, ?plabel, str(?person)) as ?who)
bind(str(?person) as ?personIri)
bind(30 as ?sort) bind(pav:authoredBy as ?property_noheader) bind("Authors" as ?property_label)
} group by ?sort ?property_noheader ?property_label
} union {
values ?startPred { schema:startDate <http://schema.org/startDate> dct:date }
graph ?a { ?_resource_iri ?startPred ?s }
optional {
values ?endPred { schema:endDate <http://schema.org/endDate> }
graph ?a { ?_resource_iri ?endPred ?e }
}
bind(40 as ?sort) bind(?startPred as ?property_noheader) bind("When" as ?property_label)
bind("January February March April May June July August SeptemberOctober November December " as ?mtab)
bind(replace(substr(?mtab, (month(?s) - 1) * 9 + 1, 9), " +$", "") as ?smon)
bind(concat(str(day(?s)), " ", ?smon, " ", str(year(?s))) as ?sdate)
bind(if(contains(str(?s), "T"), substr(str(?s), 12, 5), "") as ?stime)
bind(if(?stime = "", ?sdate, concat(?sdate, ", ", ?stime)) as ?sfull)
bind(if(bound(?e), replace(substr(?mtab, (month(?e) - 1) * 9 + 1, 9), " +$", ""), "") as ?emon)
bind(if(bound(?e), concat(str(day(?e)), " ", ?emon, " ", str(year(?e))), "") as ?edate)
bind(if(bound(?e), if(contains(str(?e), "T"), substr(str(?e), 12, 5), ""), "") as ?etime)
bind(if(bound(?e), if(?etime = "", ?edate, concat(?edate, ", ", ?etime)), "") as ?efull)
bind(if(!bound(?e), ?sfull,
if(?sfull = ?efull, ?sfull,
if(?sdate = ?edate,
if(?stime = "" || ?etime = "", ?sdate, concat(?sdate, ", ", ?stime, "–", ?etime)),
concat(?sfull, " – ", ?efull)))) as ?value_multi_val_noheader)
} union {
graph ?a { ?_resource_iri schema:position ?posv }
{
select (max(?sibpos) as ?nslot) where {
graph npa:graph { ?_resourceNp_iri np:hasAssertion ?sa . }
graph ?sa { ?_resource_iri dct:isPartOf ?sev .
values ?sStartPred { schema:startDate <http://schema.org/startDate> }
values ?sLocPred { schema:location <http://schema.org/location> }
?_resource_iri ?sStartPred ?sst ; ?sLocPred ?sloc . }
graph npa:graph { ?snp np:hasAssertion ?sa2 ; npx:introduces ?sib .
filter not exists { ?snewer npx:supersedes ?snp . } }
graph ?sa2 { ?sib dct:isPartOf ?sev ; ?sStartPred ?sst ; ?sLocPred ?sloc ;
schema:position ?sibpos . }
}
}
bind(45 as ?sort) bind(schema:position as ?property_noheader) bind("Order" as ?property_label)
bind(if(?posv = 1, "1st", if(?posv = 2, "2nd", if(?posv = 3, "3rd",
concat(str(?posv), "th")))) as ?ord)
bind(if(?nslot > 1, concat(?ord, " of ", str(?nslot), " talks in this session"),
concat(?ord, " talk of its session")) as ?value_multi_val_noheader)
} union {
values ?locPred { schema:location <http://schema.org/location> }
graph ?a { ?_resource_iri ?locPred ?value_multi_val_noheader }
bind(50 as ?sort) bind(?locPred as ?property_noheader) bind("Room" as ?property_label)
optional { graph ?a { ?value_multi_val_noheader rdfs:label ?value_label_multi } }
} union {
graph ?a { ?_resource_iri dct:isPartOf ?value_multi_val_noheader }
bind(60 as ?sort) bind(dct:isPartOf as ?property_noheader) bind("Part of" as ?property_label)
optional { graph ?a { ?value_multi_val_noheader rdfs:label ?value_label_multi } }
} union {
graph ?a { ?_resource_iri dct:description ?descRaw }
bind(replace(str(?descRaw), "[\n\r]+", " ") as ?value_multi_val_noheader)
bind(70 as ?sort) bind(dct:description as ?property_noheader) bind("Description" as ?property_label)
} union {
values ?aboutPred { schema:about <http://schema.org/about> }
graph ?a { ?_resource_iri ?aboutPred ?value_multi_val_noheader }
bind(80 as ?sort) bind(?aboutPred as ?property_noheader) bind("Topic" as ?property_label)
optional { graph ?a { ?value_multi_val_noheader rdfs:label ?value_label_multi } }
} union {
graph ?a { ?_resource_iri rdfs:seeAlso ?value_multi_val_noheader }
bind(90 as ?sort) bind(rdfs:seeAlso as ?property_noheader) bind("Link" as ?property_label)
} union {
bind(1000 as ?sort) bind(<http://purl.org/nanopub/x/introduces> as ?property_noheader)
bind("Defined in" as ?property_label)
bind(?_resourceNp_iri as ?value_multi_val_noheader)
bind(substr(replace(str(?_resourceNp_iri), "^.*/np/", ""), 1, 10) as ?value_label_multi)
} union {
graph ?a { ?_resource_iri ?pred ?value_multi_val_noheader }
filter(?pred not in (rdf:type, rdfs:label, rdfs:seeAlso, wd:P823, pav:authoredBy, dct:creator,
dct:date, dct:isPartOf, dct:description,
schema:startDate, schema:endDate, schema:location, schema:about, schema:position,
<http://schema.org/startDate>, <http://schema.org/endDate>,
<http://schema.org/location>, <http://schema.org/about>))
bind(990 as ?sort) bind(?pred as ?property_noheader) bind(str(?pred) as ?property_label)
optional { graph ?a { ?value_multi_val_noheader rdfs:label ?value_label_multi } }
}
}
order by ?sort ?property_noheader ?value_multi_val_noheader
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/provenance
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/assertion
http://www.w3.org/ns/prov#wasAttributedTo
https://orcid.org/0000-0002-1267-0234
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/pubinfo
https://orcid.org/0000-0002-1267-0234
http://xmlns.com/foaf/0.1/name
Tobias Kuhn
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
http://purl.org/dc/terms/created
2026-09-09T06:11:53Z
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
http://purl.org/dc/terms/creator
https://orcid.org/0000-0002-1267-0234
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
http://purl.org/dc/terms/license
https://creativecommons.org/licenses/by/4.0/
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
http://purl.org/nanopub/x/embeds
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/get-presentation-details
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
http://purl.org/nanopub/x/supersedes
https://w3id.org/np/RAbqq0iRlZCN2sW48oC7A_eVRQ7NKJF6vdPxdlO4nw9j4
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
http://www.w3.org/2000/01/rdf-schema#label
Get presentation details
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
https://w3id.org/np/o/ntemplate/wasCreatedFromProvenanceTemplate
https://w3id.org/np/RA7lSq6MuK_TIC6JMSHvLtee3lpLoZDOqLJCLXevnrPoU
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate
https://w3id.org/np/RA-N4_kFxcruvBTlo1yJv29E4SLOXsx5KO_th69PprMrA
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate
https://w3id.org/np/RACJ58Gvyn91LqCKIO9zu1eijDQIeEff28iyDrJgjSJF8
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate
https://w3id.org/np/RARJj78P72NR5edKOnu_f4ePE9NYYuW2m2pM-fEoobMBk
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate
https://w3id.org/np/RAoTD7udB2KtUuOuAe74tJi1t3VzK0DyWS7rYVAq1GRvw
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
https://w3id.org/np/o/ntemplate/wasCreatedFromTemplate
https://w3id.org/np/RAEFAt-QcFK0ZhqfvlsmS10BnzGJA0xwOICZXkO-ai87k
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/sig
http://purl.org/nanopub/x/hasAlgorithm
RSA
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/sig
http://purl.org/nanopub/x/hasPublicKey
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/sig
http://purl.org/nanopub/x/hasSignature
L1KB5ZrEXZfGFC41IxmofpYjVbNjn7B9HDNpp3zsyHf09NZedK8/krujpV/BWsBK7bNMVvHl67nrFr55cvWIBr14HqiHbqTOZp/7DlPC830u2slR0H1qVw+WTeMPKzRCnwgHxLES6vYjtvsi3g709uiDLRF7o18raKQEOhVGDao=
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/sig
http://purl.org/nanopub/x/hasSignatureTarget
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8
https://w3id.org/np/RA-TnHdB501Qs-Wmj0QtrW8t6rjFuqgcnMtH1aXYiLtf8/sig
http://purl.org/nanopub/x/signedBy
https://orcid.org/0000-0002-1267-0234