134 lines
5.7 KiB
XML
134 lines
5.7 KiB
XML
<?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>
|
|
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
|
PREFIX core: <http://vivoweb.org/ontology/core#>
|
|
PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
|
|
PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
|
|
|
|
SELECT DISTINCT <collated>?subclass</collated>
|
|
# send the property to the template, since this view supports multiple role properties
|
|
?property
|
|
?role
|
|
?roleLabel ?roleTypeLabel
|
|
?indivInRole (afn:localname(?indivInRole) AS ?indivName)
|
|
?indivLabel
|
|
?dateTimeInterval ?dateTimeStart ?dateTimeEnd ?objectType
|
|
WHERE {
|
|
|
|
?subject ?property ?role .
|
|
?role a ?objectType
|
|
|
|
OPTIONAL { ?role rdfs:label ?roleLabel }
|
|
|
|
# We need ?subclass in the uncollated query to get the roleTypeLabel
|
|
# for roles that have no label.
|
|
OPTIONAL { ?role vitro:mostSpecificType ?subclass . }
|
|
OPTIONAL { ?role vitro:mostSpecificType ?subclass .
|
|
?subclass rdfs:label ?roleTypeLabel
|
|
}
|
|
OPTIONAL { ?role <http://purl.obolibrary.org/obo/RO_0000052> ?indivInRole }
|
|
OPTIONAL { ?role <http://purl.obolibrary.org/obo/RO_0000052> ?indivInRole .
|
|
?indivInRole rdfs:label ?indivLabel
|
|
}
|
|
OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?indivInRole .
|
|
}
|
|
OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?indivInRole .
|
|
?indivInRole rdfs:label ?indivLabel
|
|
}
|
|
|
|
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
|
|
?dateTimeInterval core:start ?dateTimeStartValue .
|
|
?dateTimeStartValue core:dateTime ?dateTimeStart
|
|
}
|
|
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
|
|
?dateTimeInterval core:end ?dateTimeEndValue .
|
|
?dateTimeEndValue core:dateTime ?dateTimeEnd
|
|
}
|
|
<critical-data-required>
|
|
FILTER ( bound(?indivInRole) )
|
|
</critical-data-required>
|
|
} ORDER BY <collated>?subclass</collated> ?indivLabel ?roleLabel ?roleTypeLabel ?indivName
|
|
</query-select>
|
|
|
|
<query-construct>
|
|
PREFIX core: <http://vivoweb.org/ontology/core#>
|
|
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
|
PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
|
|
CONSTRUCT {
|
|
?subject ?property ?role .
|
|
?role a ?objectType .
|
|
?role ?roleProperty ?roleValue .
|
|
?role vitro:mostSpecificType ?subclass .
|
|
?subclass rdfs:label ?roleTypeLabel .
|
|
?indivInRole rdfs:label ?indivLabel
|
|
} WHERE {
|
|
{
|
|
?subject ?property ?role .
|
|
?role a ?objectType
|
|
} UNION {
|
|
?subject ?property ?role .
|
|
?role a ?objectType .
|
|
?role ?roleProperty ?roleValue
|
|
} UNION {
|
|
?subject ?property ?role .
|
|
?role a ?objectType .
|
|
?role vitro:mostSpecificType ?subclass
|
|
} UNION {
|
|
?subject ?property ?role .
|
|
?role a ?objectType .
|
|
?role vitro:mostSpecificType ?subclass .
|
|
?subclass rdfs:label ?roleTypeLabel
|
|
} UNION {
|
|
?subject ?property ?role .
|
|
?role a ?objectType .
|
|
?role <http://purl.obolibrary.org/obo/RO_0000052> ?indivInRole .
|
|
?indivInRole rdfs:label ?indivLabel
|
|
} UNION {
|
|
?subject ?property ?role .
|
|
?role a ?objectType .
|
|
?role <http://purl.obolibrary.org/obo/BFO_0000054> ?indivInRole .
|
|
?indivInRole rdfs:label ?indivLabel
|
|
}
|
|
}
|
|
</query-construct>
|
|
|
|
<query-construct>
|
|
PREFIX core: <http://vivoweb.org/ontology/core#>
|
|
CONSTRUCT {
|
|
?subject ?property ?role .
|
|
?role a ?objectType .
|
|
?role core:dateTimeInterval ?dateTimeInterval .
|
|
?dateTimeInterval core:start ?dateTimeStartValue .
|
|
?dateTimeStartValue core:dateTime ?dateTimeStart
|
|
} WHERE {
|
|
?subject ?property ?role .
|
|
?role a ?objectType .
|
|
?role core:dateTimeInterval ?dateTimeInterval .
|
|
?dateTimeInterval core:start ?dateTimeStartValue .
|
|
?dateTimeStartValue core:dateTime ?dateTimeStart
|
|
}
|
|
</query-construct>
|
|
|
|
<query-construct>
|
|
PREFIX core: <http://vivoweb.org/ontology/core#>
|
|
CONSTRUCT {
|
|
?subject ?property ?role .
|
|
?role core:dateTimeInterval ?dateTimeInterval .
|
|
?dateTimeInterval core:end ?dateTimeEndValue .
|
|
?dateTimeEndValue core:dateTime ?dateTimeEnd
|
|
} WHERE {
|
|
?subject ?property ?role .
|
|
?role core:dateTimeInterval ?dateTimeInterval .
|
|
?dateTimeInterval core:end ?dateTimeEndValue .
|
|
?dateTimeEndValue core:dateTime ?dateTimeEnd
|
|
}
|
|
</query-construct>
|
|
|
|
<template>propStatement-relatedRole.ftl</template>
|
|
</list-view-config>
|