vivo/productMods/config/listViewConfig-organizationForPosition.xml

117 lines
5.1 KiB
XML
Raw Normal View History

2011-01-31 22:52:40 +00:00
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
<!-- See guidelines in vitro/doc/list_view_configuration_guidelines.txt -->
<list-view-config>
<query-select>
2011-01-31 22:52:40 +00:00
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX afn: &lt;http://jena.hpl.hp.com/ARQ/function#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
2011-01-31 22:52:40 +00:00
SELECT DISTINCT <collated> ?subclass </collated>
?position
2011-01-31 22:52:40 +00:00
?positionTitle
?person ?personName
2012-08-07 19:37:11 +00:00
?dateTimeStart ?dateTimeEnd
?hideThis
WHERE {
2011-01-31 22:52:40 +00:00
?subject ?property ?position
OPTIONAL { ?position core:positionForPerson ?person .
?person rdfs:label ?personName
}
<collated>
OPTIONAL { ?position vitro:mostSpecificType ?subclass .
2011-01-31 22:52:40 +00:00
?subclass rdfs:subClassOf core:Position
}
</collated>
2011-01-31 22:52:40 +00:00
OPTIONAL { ?position rdfs:label ?positionTitle }
2012-08-07 19:37:11 +00:00
OPTIONAL { ?position core:hideFromDisplay ?hideThis }
2011-01-31 22:52:40 +00:00
OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
# Get current positions only: end date is either null or not in the past
2012-08-01 14:03:11 +00:00
}
2012-08-07 19:37:11 +00:00
# NOT EXISTS { ?position core:hideFromDisplay ?hideThis }
2012-08-01 14:03:11 +00:00
FILTER ( !bound(?dateTimeEnd) ||
2011-01-31 22:52:40 +00:00
afn:substring(str(?dateTimeEnd), 0, 4) &gt;= afn:substring(str(afn:now()), 0, 4) )
<critical-data-required>
FILTER ( bound(?person) )
</critical-data-required>
} ORDER BY <collated> ?subclass </collated> ?personName
</query-select>
2011-01-31 22:52:40 +00:00
<query-construct>
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
2011-01-31 22:52:40 +00:00
CONSTRUCT {
?subject ?property ?position .
?position vitro:mostSpecificType ?subclass .
2011-01-31 22:52:40 +00:00
?subclass rdfs:subClassOf core:Position
} WHERE {
?subject ?property ?position .
?position vitro:mostSpecificType ?subclass .
2011-01-31 22:52:40 +00:00
?subclass rdfs:subClassOf core:Position
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?position .
?position ?positionProperty ?positionValue .
?person rdfs:label ?personName
} WHERE {
{
?subject ?property ?position
} UNION {
?subject ?property ?position .
?position ?positionProperty ?positionValue
} UNION {
?subject ?property ?position .
?position core:positionForPerson ?person .
?person rdfs:label ?personName
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-organizationForPosition.ftl</template>
</list-view-config>