Remove constructs from final listview

This commit is contained in:
Graham Triggs 2017-10-18 02:05:49 +01:00
parent cc6e836d94
commit d87930371c

View file

@ -4,7 +4,7 @@
<!-- See guidelines at https://wiki.duraspace.org/x/eYXVAw -->
<list-view-config>
<query-select>
<query-select>
PREFIX afn: &lt;http://jena.apache.org/ARQ/function#&gt;
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
@ -12,317 +12,225 @@
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
PREFIX event: &lt;http://purl.org/NET/c4dm/event.owl#&gt;
SELECT DISTINCT <collated>?subclass</collated>
?role ?roleLabel
?event1 ?event1Name ?event1Label
?event2 ?event2Label
?event3 ?event3Label
?series ?seriesLabel
?dateTimeStart
?dateTimeEnd
WHERE {
?subject ?property ?role .
OPTIONAL { ?role rdfs:label ?roleLabel . }
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
LET (?event1Name := afn:localname(?event1))
OPTIONAL { ?event1 rdfs:label ?event1Label . }
OPTIONAL { ?event2 a event:Event .
OPTIONAL { ?event2 rdfs:label ?event2Label . }
{
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2 .
} UNION {
?event2 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
}
}
OPTIONAL {
{
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2 .
} UNION {
?event2 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
}
OPTIONAL { ?event3 rdfs:label ?event3Label . }
}
OPTIONAL { ?series a vivo:EventSeries .
OPTIONAL { ?series rdfs:label ?seriesLabel . }
{
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
} UNION {
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
}
}
OPTIONAL {
{
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
} UNION {
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event3 .
}
OPTIONAL { ?series rdfs:label ?seriesLabel . }
}
SELECT DISTINCT
<collated>?subclass</collated>
?role ?roleLabel
?event1 ?event1Name ?event1Label
?event2 ?event2Label
?event3 ?event3Label
?series ?seriesLabel
?dateTimeStart
?dateTimeEnd
WHERE {
?subject ?property ?role .
?role a vivo:AttendeeRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a vivo:AttendeeRole .</precise-subquery>
?role rdfs:label ?roleLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a vivo:AttendeeRole .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
<collated>
?event1 vitro:mostSpecificType ?subclass .
{
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event1 vitro:mostSpecificType ?subclass .
</precise-subquery>
?subclass rdfs:subClassOf event:Event .
} UNION {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event1 vitro:mostSpecificType ?subclass .
</precise-subquery>
?subclass owl:equivalentClass event:Event .
}
</collated>
<collated>
?event1 vitro:mostSpecificType ?subclass .
{
?subclass rdfs:subClassOf event:Event .
} UNION {
?subclass owl:equivalentClass event:Event .
}
</collated>
}
OPTIONAL { ?role vivo:dateTimeInterval ?dateTimeInterval .
OPTIONAL { ?dateTimeInterval vivo:start ?dateTimeStartValue .
?dateTimeStartValue vivo:dateTime ?dateTimeStart .
}
OPTIONAL { ?dateTimeInterval vivo:end ?dateTimeEndValue .
?dateTimeEndValue vivo:dateTime ?dateTimeEnd .
}
}
<critical-data-required>
FILTER ( bound(?event1) )
</critical-data-required>
} ORDER BY <collated>?subclass</collated> DESC(?dateTime) ?event1Label ?event1Name
LET (?event1Name := afn:localname(?event1))
OPTIONAL {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
</precise-subquery>
?event1 rdfs:label ?event1Label .
}
OPTIONAL {
{
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
</precise-subquery>
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2 .
?event2 a event:Event .
OPTIONAL {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2 .
</precise-subquery>
?event2 rdfs:label ?event2Label .
}
} UNION {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
</precise-subquery>
?event2 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?event2 a event:Event .
OPTIONAL {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event2 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
</precise-subquery>
?event2 rdfs:label ?event2Label .
}
}
}
OPTIONAL {
{
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
</precise-subquery>
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2 .
?event3 rdfs:label ?event3Label .
} UNION {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
</precise-subquery>
?event2 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?event3 rdfs:label ?event3Label .
}
}
OPTIONAL {
{
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
</precise-subquery>
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
?series a vivo:EventSeries .
OPTIONAL {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
?series a vivo:EventSeries .
</precise-subquery>
?series rdfs:label ?seriesLabel .
}
} UNION {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
</precise-subquery>
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?series a vivo:EventSeries .
OPTIONAL {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?series a vivo:EventSeries .
</precise-subquery>
?series rdfs:label ?seriesLabel .
}
}
}
OPTIONAL {
{
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
</precise-subquery>
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
OPTIONAL {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
</precise-subquery>
?series rdfs:label ?seriesLabel .
}
} UNION {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
</precise-subquery>
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event3 .
OPTIONAL {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event3 .
</precise-subquery>
?series rdfs:label ?seriesLabel .
}
}
}
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a vivo:AttendeeRole .</precise-subquery>
?role vivo:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role vivo:dateTimeInterval ?dateTimeInterval .
</precise-subquery>
?dateTimeInterval vivo:start ?dateTimeStartValue .
?dateTimeStartValue vivo:dateTime ?dateTimeStart .
}
OPTIONAL {
<precise-subquery>
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role vivo:dateTimeInterval ?dateTimeInterval .
</precise-subquery>
?dateTimeInterval vivo:end ?dateTimeEndValue .
?dateTimeEndValue vivo:dateTime ?dateTimeEnd .
}
}
<critical-data-required>
FILTER ( bound(?event1) )
</critical-data-required>
} ORDER BY <collated>?subclass</collated> DESC(?dateTime) ?event1Label ?event1Name
</query-select>
<query-construct>
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX owl: &lt;http://www.w3.org/2002/07/owl#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
PREFIX event: &lt;http://purl.org/NET/c4dm/event.owl#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event1 vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf event:Event .
?subclass owl:equivalentClass event:Event .
} WHERE {
{
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event1 vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf event:Event
} UNION {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event1 vitro:mostSpecificType ?subclass .
?subclass owl:equivalentClass event:Event
}
}
</query-construct>
<query-construct>
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?event1 rdfs:label ?event1Label
} WHERE {
{
?subject ?property ?role .
?role a vivo:AttendeeRole .
} UNION {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event1 rdfs:label ?event1Label
}
}
</query-construct>
<query-construct>
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX event: &lt;http://purl.org/NET/c4dm/event.owl#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?event2 a event:Event .
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2 .
?event2 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?event2 rdfs:label ?event2Label
} WHERE {
{
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event2 a event:Event .
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2 .
?event2 rdfs:label ?event2Label
} UNION {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event2 a event:Event .
?event2 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?event2 rdfs:label ?event2Label
}
}
</query-construct>
<query-construct>
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX event: &lt;http://purl.org/NET/c4dm/event.owl#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2 .
?event2 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event3 .
?event2 a event:Event .
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?event3 rdfs:label ?event3Label
} WHERE {
{
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event2 a event:Event .
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2 .
?event3 rdfs:label ?event3Label
} UNION {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?event2 a event:Event .
?event2 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?event3 rdfs:label ?event3Label
}
}
</query-construct>
<query-construct>
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX event: &lt;http://purl.org/NET/c4dm/event.owl#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?series a vivo:EventSeries .
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?series rdfs:label ?seriesLabel
} WHERE {
{
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?series a vivo:EventSeries .
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
?series rdfs:label ?seriesLabel
} UNION {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?series a vivo:EventSeries .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?series rdfs:label ?seriesLabel
}
}
</query-construct>
<query-construct>
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event3 .
?series a vivo:EventSeries .
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?series rdfs:label ?seriesLabel
} WHERE {
{
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?series a vivo:EventSeries .
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
?series rdfs:label ?seriesLabel
} UNION {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
?series a vivo:EventSeries .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?series rdfs:label ?seriesLabel
}
}
</query-construct>
<query-construct>
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role vivo:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval vivo:start ?dateTimeStartValue .
?dateTimeStartValue vivo:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role vivo:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval vivo:start ?dateTimeStartValue .
?dateTimeStartValue vivo:dateTime ?dateTimeStart
}
</query-construct>
<query-construct>
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role vivo:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval vivo:end ?dateTimeEndValue .
?dateTimeEndValue vivo:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?role .
?role a vivo:AttendeeRole .
?role vivo:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval vivo:end ?dateTimeEndValue .
?dateTimeEndValue vivo:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-hasAttendeeRole.ftl</template>
</list-view-config>