https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/Head
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
http://www.nanopub.org/nschema#hasAssertion
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/assertion
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
http://www.nanopub.org/nschema#hasProvenance
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/provenance
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
http://www.nanopub.org/nschema#hasPublicationInfo
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/pubinfo
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
http://www.w3.org/1999/02/22-rdf-syntax-ns#type
http://www.nanopub.org/nschema#Nanopublication
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/assertion
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/list-view-displays
http://purl.org/dc/terms/description
Lists the currently active view displays of a resource, for the About page: standalone view displays and the views contributed by assigned presets (marked in the via_preset column). Filtered to declarations signed by an admin or maintainer of the owning space, or by the affected user themselves; deactivated entries (and entries with a newer deactivation for the same pair) are excluded. Shows each view (resolved to its latest version), its structural position, the contributing preset (if any), who added it, the date, and the source nanopub. Ordered by structural position. Federation footprint (2026-08-20): endpoint rebased onto repo/full, so the former SERVICE hops to repo/full (preset branch) and to the ResourceView type repo (latest-version resolution) are local; only the space-state lookup remains federated, to repo/spaces (3 SERVICE clauses -> 1). The resolution was also rewritten from a run-once repo-wide max-date sub-select (which cannot see outer bindings and would enumerate the whole repository on repo/full) to bound per-view lookups choosing the same-key, non-invalidated supersedes-head with no newer such sibling -- same heads, ties preserved. Validated result-identical to the previous version across user/space/resource pages (group_concat token order, unspecified in SPARQL, may differ). The per-hop loopback federation was an amplifier of the rdf4j connection-pool deadlock behind the fleet-wide /api wedges.
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/list-view-displays
http://purl.org/dc/terms/license
http://www.apache.org/licenses/LICENSE-2.0
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/list-view-displays
http://www.w3.org/1999/02/22-rdf-syntax-ns#type
https://w3id.org/kpxl/grlc/grlc-query
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/list-view-displays
http://www.w3.org/2000/01/rdf-schema#label
List view displays
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/list-view-displays
https://w3id.org/kpxl/grlc/endpoint
https://w3id.org/np/l/nanopub-query-1.1/repo/full
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/list-view-displays
https://w3id.org/kpxl/grlc/sparql
prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
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 gen: <https://w3id.org/kpxl/gen/terms/>
select (coalesce(?viewLatest, ?viewRef) as ?view) ?view_label ?position
(?preset as ?via_preset) (?preset_label as ?via_preset_label)
(?user as ?added_by) (?date as ?date_added)
?deactivateView ?np ("^" as ?np_label) where {
values ?_resource_multi_iri {}
service <https://w3id.org/np/l/nanopub-query-1.1/repo/spaces> {
graph npa:graph { npa:thisRepo npa:hasCurrentSpaceState ?stateG . }
{
graph ?stateG {
?_resource_multi_iri npa:isMaintainedBy? ?space .
?ri a gen:RoleInstantiation ; npa:forSpace ?space ; npa:forAgent ?authAgent ;
(npa:inverseProperty|npa:regularProperty) ?roleProp .
?authAcct a npa:AccountState ; npa:agent ?authAgent ; npa:pubkey ?pubkey .
}
optional {
graph npa:spacesGraph {
?rd a npa:RoleDeclaration ; npa:forSpace ?space ;
npa:hasRoleType gen:MaintainerRole ;
(npa:inverseProperty|npa:regularProperty) ?roleProp .
bind(true as ?isMaintainer)
}
}
filter(?roleProp = gen:hasAdmin || bound(?isMaintainer))
} union {
graph ?stateG { ?selfAcct a npa:AccountState ; npa:agent ?_resource_multi_iri ; npa:pubkey ?pubkey . }
}
}
{
graph npa:graph {
?np npx:hasNanopubType gen:ViewDisplay ;
npa:hasValidSignatureForPublicKeyHash ?pubkey ;
dct:created ?date ;
npx:embeds ?display ;
np:hasAssertion ?a .
filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . }
optional { ?np npx:signedBy ?user }
}
graph ?a {
?display gen:isDisplayOfView ?viewRef ;
gen:isDisplayFor ?_resource_multi_iri .
optional {
values ?displayMode { gen:ActivatedViewDisplay gen:DeactivatedViewDisplay }
?display a ?displayMode .
}
}
}
union
{
select ?viewRef ?displayMode ?preset ?preset_label ?user ?date ?np ?pubkey ?_resource_multi_iri {
{ # was: service repo/full — now local on the repo/full endpoint
graph npa:graph {
?np npx:hasNanopubType gen:PresetAssignment ;
npa:hasValidSignatureForPublicKeyHash ?pubkey ;
dct:created ?date ;
npx:embeds ?assignment ;
np:hasAssertion ?a .
filter not exists { ?npx npx:invalidates ?np ; npa:hasValidSignatureForPublicKeyHash ?pubkey . }
optional { ?np npx:signedBy ?user }
}
graph ?a {
?assignment gen:isAssignmentFor ?_resource_multi_iri ;
gen:isAssignmentOfPreset ?preset .
optional {
values ?displayMode { gen:ActivatedPresetAssignment gen:DeactivatedPresetAssignment }
?assignment a ?displayMode .
}
}
filter not exists {
graph npa:graph {
?np2 npx:hasNanopubType gen:PresetAssignment ;
npa:hasValidSignatureForPublicKeyHash ?pubkey2 ;
dct:created ?date2 ;
npx:embeds ?assignment2 ;
np:hasAssertion ?a2 .
filter not exists { ?npx2 npx:invalidates ?np2 ; npa:hasValidSignatureForPublicKeyHash ?pubkey2 . }
}
graph ?a2 {
?assignment2 a gen:DeactivatedPresetAssignment ;
gen:isAssignmentFor ?_resource_multi_iri ;
gen:isAssignmentOfPreset ?preset .
}
filter(?date2 > ?date)
}
graph npa:graph { ?presetNp npx:embeds ?preset ; np:hasAssertion ?pa . }
graph ?pa {
?preset a gen:Preset .
optional { ?preset rdfs:label ?preset_label . }
{ ?preset gen:hasTopLevelView ?viewRef } union { ?preset gen:hasView ?viewRef }
}
}
}
}
optional {
graph npa:graph { ?np np:hasAssertion ?npAssertion . }
graph ?npAssertion { ?npDisplay gen:hasStructuralPosition ?dispPos . }
}
filter(!bound(?displayMode) || !contains(str(?displayMode), "Deactivated"))
filter not exists {
graph npa:graph {
?np2 npx:hasNanopubType gen:ViewDisplay ;
npa:hasValidSignatureForPublicKeyHash ?pubkey2 ;
dct:created ?date2 ;
npx:embeds ?display2 ;
np:hasAssertion ?a2 .
filter not exists { ?npx2 npx:invalidates ?np2 ; npa:hasValidSignatureForPublicKeyHash ?pubkey2 . }
}
graph ?a2 {
?display2 a gen:DeactivatedViewDisplay ;
gen:isDisplayOfView ?viewRef ;
gen:isDisplayFor ?_resource_multi_iri .
}
filter(?date2 > ?date)
}
optional {
# Resolve ?viewRef to its latest same-key non-invalidated version. Was a
# service on the ResourceView type shard with a run-once max-date sub-select;
# a sub-select cannot see outer bindings, so localized on repo/full it would
# enumerate the whole repository (measured: >10s, times out). Rewritten as
# BOUND point lookups per ?viewRef: the head is the supersedes-connected,
# same-key, non-invalidated version with no newer such sibling (ties kept,
# matching the old max+join). All filters stay OUTSIDE graph blocks (rdf4j
# planner trap).
graph npa:graph { ?vnp npx:embeds ?viewRef ; npa:hasValidSignatureForPublicKey ?vKey . }
graph npa:networkGraph { ?headNp (npx:supersedes)* ?vnp . }
graph npa:graph { ?headNp npa:hasValidSignatureForPublicKey ?vKey ; dct:created ?headDate ;
npx:embeds ?viewLatest ; np:hasAssertion ?hva . }
filter not exists { graph npa:graph { ?i2 npx:invalidates ?headNp ; npa:hasValidSignatureForPublicKey ?vKey . } }
filter not exists {
graph npa:networkGraph { ?h2 (npx:supersedes)* ?vnp . }
graph npa:graph { ?h2 npa:hasValidSignatureForPublicKey ?vKey ; dct:created ?h2Date . }
filter not exists { graph npa:graph { ?i3 npx:invalidates ?h2 ; npa:hasValidSignatureForPublicKey ?vKey . } }
filter(?h2Date > ?headDate)
}
graph ?hva { ?viewLatest dct:title ?view_label . }
optional { graph ?hva { ?viewLatest gen:hasStructuralPosition ?viewPos . } }
}
bind(coalesce(?dispPos, ?viewPos, "") as ?position)
bind(str(?viewRef) as ?deactivateView)
}
order by ?position desc(?date)
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/provenance
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/assertion
http://www.w3.org/ns/prov#wasAttributedTo
https://orcid.org/0000-0002-1267-0234
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/pubinfo
https://orcid.org/0000-0002-1267-0234
http://xmlns.com/foaf/0.1/name
Tobias Kuhn
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
http://purl.org/dc/terms/created
2026-08-20T07:11:13Z
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
http://purl.org/dc/terms/creator
https://orcid.org/0000-0002-1267-0234
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
http://purl.org/dc/terms/license
https://creativecommons.org/licenses/by/4.0/
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
http://purl.org/nanopub/x/embeds
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/list-view-displays
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
http://purl.org/nanopub/x/supersedes
https://w3id.org/np/RAe63temfrauWIRVIpGa5booRJgioepZSg8t54lgMxmNo
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
http://www.w3.org/2000/01/rdf-schema#label
List view displays
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
https://w3id.org/np/o/ntemplate/wasCreatedFromProvenanceTemplate
https://w3id.org/np/RA7lSq6MuK_TIC6JMSHvLtee3lpLoZDOqLJCLXevnrPoU
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate
https://w3id.org/np/RA0J4vUn_dekg-U1kK3AOEt02p9mT2WO03uGxLDec1jLw
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate
https://w3id.org/np/RAoTD7udB2KtUuOuAe74tJi1t3VzK0DyWS7rYVAq1GRvw
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
https://w3id.org/np/o/ntemplate/wasCreatedFromPubinfoTemplate
https://w3id.org/np/RAukAcWHRDlkqxk7H2XNSegc1WnHI569INvNr-xdptDGI
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
https://w3id.org/np/o/ntemplate/wasCreatedFromTemplate
https://w3id.org/np/RAEFAt-QcFK0ZhqfvlsmS10BnzGJA0xwOICZXkO-ai87k
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/sig
http://purl.org/nanopub/x/hasAlgorithm
RSA
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/sig
http://purl.org/nanopub/x/hasPublicKey
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwUtewGCpT5vIfXYE1bmf/Uqu1ojqnWdYxv+ySO80ul8Gu7m8KoyPAwuvaPj0lvPtHrg000qMmkxzKhYknEjq8v7EerxZNYp5B3/3+5ZpuWOYAs78UnQVjbHSmDdmryr4D4VvvNIiUmd0yxci47dTFUj4DvfHnGd6hVe5+goqdcwIDAQAB
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/sig
http://purl.org/nanopub/x/hasSignature
aLFZlOyVlobRjSyfQBoMpywymbMd7Gtf7mmYp3zfWRmfFEjBmmAKEZzCWooZZpDR22wrmPIM8oyzgKS53amt6FvMb/ZHWAq9fp9GMFmD07zNJCOTu8IqLcg1s7I2Lp6P7BMOIaOgMNKOboeLkGLOIUpy2wllNotPL+4/4tZ+rA8=
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/sig
http://purl.org/nanopub/x/hasSignatureTarget
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0
https://w3id.org/np/RAPlzb5-YJ5RLn59ZVw82SbWNqKopZ567xIscdlHX2xS0/sig
http://purl.org/nanopub/x/signedBy
https://orcid.org/0000-0002-1267-0234