Merge branch 'maint-rel-1.6' of git+ssh://github.com/vivo-project/VIVO into maint-rel-1.6

This commit is contained in:
j2blake 2013-10-29 17:21:09 -04:00
commit 291d04c44f
25 changed files with 1312 additions and 548 deletions

View file

@ -32,26 +32,26 @@
OPTIONAL { ?advisingRel rdfs:label ?advisingRelLabel }
OPTIONAL { ?advisingRel core:relates ?advisor .
?advisor a foaf:Person .
OPTIONAL { ?advisor rdfs:label ?advisorLabel }
?advisor rdfs:label ?advisorLabel
}
OPTIONAL { ?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel .
OPTIONAL { ?degree core:abbreviation ?degreeAbbr }
}
OPTIONAL { ?advisingRel core:degreeCandidacy ?degree .
?degree core:abbreviation ?degreeAbbr .
}
<collated>
OPTIONAL { ?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship
}
</collated>
OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd)

View file

@ -32,26 +32,26 @@
OPTIONAL { ?advisingRel rdfs:label ?advisingRelLabel }
OPTIONAL { ?advisingRel core:relates ?advisee .
?advisee a foaf:Person .
OPTIONAL { ?advisee rdfs:label ?adviseeLabel }
?advisee rdfs:label ?adviseeLabel
}
OPTIONAL { ?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel .
OPTIONAL { ?degree core:abbreviation ?degreeAbbr }
}
OPTIONAL { ?advisingRel core:degreeCandidacy ?degree .
?degree core:abbreviation ?degreeAbbr
}
<collated>
OPTIONAL { ?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship
}
</collated>
OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd)

View file

@ -35,18 +35,16 @@
OPTIONAL { ?awardReceipt core:assignedBy ?assignedBy .
?assignedBy rdfs:label ?assignedByLabel
}
OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
OPTIONAL { ?awardReceipt core:dateTimeValue ?dateTimeValue
OPTIONAL { ?dateTimeValue core:dateTime ?dateTime }
OPTIONAL { ?awardReceipt core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
}
} ORDER BY DESC(?dateTime) DESC(?dateTimeEnd)
</query-select>

View file

@ -23,10 +23,14 @@
OPTIONAL { ?edTraining vitro:mostSpecificType ?subclass . }
OPTIONAL { ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree .
?degree a core:AcademicDegree
OPTIONAL { ?degree rdfs:label ?degreeName }
OPTIONAL { ?degree core:abbreviation ?degreeAbbr }
}
?degree a core:AcademicDegree .
?degree rdfs:label ?degreeName
}
OPTIONAL { ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree .
?degree a core:AcademicDegree .
?degree core:abbreviation ?degreeAbbr
}
OPTIONAL { ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?org .
?org a foaf:Organization .
?org rdfs:label ?orgName
@ -34,13 +38,13 @@
OPTIONAL { ?edTraining core:majorField ?majorField }
OPTIONAL { ?edTraining core:departmentOrSchool ?deptOrSchool }
OPTIONAL { ?edTraining core:supplementalInformation ?info }
OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
} ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart)
</query-select>

View file

@ -0,0 +1,159 @@
<?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 afn: &lt;http://jena.hpl.hp.com/ARQ/function#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&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;
SELECT DISTINCT <collated>?subclass</collated>
# send the property to the template, since this view supports multiple role properties
?property
?role
?roleLabel
?activity ?activityName
?activityLabel
?dateTimeStart ?dateTimeEnd
?hideThis
?objectType
WHERE {
?subject ?property ?role .
?role a core:ClinicalRole .
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel
<collated>
?activity vitro:mostSpecificType ?subclass
</collated>
}
OPTIONAL { ?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityLabel
<collated>
?activity vitro:mostSpecificType ?subclass
</collated>
}
OPTIONAL { ?role rdfs:label ?roleLabel }
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
}
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&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;
CONSTRUCT {
?subject ?property ?role .
?role a core:ClinicalRole .
?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?role a core:ClinicalRole .
?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass
}
</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;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:ClinicalRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?role a core:ClinicalRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass
}
</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 ?role .
?role a core:ClinicalRole .
?role ?roleProperty ?roleValue .
?activity rdfs:label ?activityName
} WHERE {
{
?subject ?property ?role .
?role a core:ClinicalRole .
} UNION {
?subject ?property ?role .
?role a core:ClinicalRole .
?role ?roleProperty ?roleValue
} UNION {
?subject ?property ?role .
?role a core:ClinicalRole .
?role core:relates ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a core:ClinicalRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a core:ClinicalRole .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:ClinicalRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?role .
?role a core:ClinicalRole .
?role 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 ?role .
?role a core:ClinicalRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?role .
?role a core:ClinicalRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-hasRole.ftl</template>
</list-view-config>

View file

@ -0,0 +1,188 @@
<?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 afn: &lt;http://jena.hpl.hp.com/ARQ/function#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&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;
SELECT DISTINCT
?role
?activity ?activityName
?activityLabel
?awardedBy
?adminedBy
?awardedByLabel
?adminedByLabel
?dateTimeStartRole ?dateTimeEndRole
?dateTimeStartGrant ?dateTimeEndGrant
?hideThis
WHERE {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity))
}
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:grantAwardedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel
}
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:administeredBy ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
}
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
}
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
}
OPTIONAL { ?role core:hideFromDisplay ?hideThis }
} ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
</query-select>
<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 ?role .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?role ?roleProperty ?roleValue .
?activity rdfs:label ?activityLabel .
?activity core:grantAwardedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel .
?activity core:administeredBy ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel
} WHERE {
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
} UNION {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role ?roleProperty ?roleValue
} UNION {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity rdfs:label ?activityLabel
} UNION {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:grantAwardedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel
} UNION {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:administeredBy ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
} WHERE {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
} WHERE {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
} WHERE {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
} WHERE {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
}
</query-construct>
<template>propStatement-hasInvestigatorRole.ftl</template>
</list-view-config>

View file

@ -22,18 +22,19 @@
?subject ?property ?role
OPTIONAL { ?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass
OPTIONAL { ?activity rdfs:label ?activityName }
OPTIONAL { ?subclass rdfs:label ?subclassLabel }
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
?activity vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?subclassLabel
}
OPTIONAL { ?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName
}
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
}
} ORDER BY <collated> ?subclass </collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityName

View file

@ -24,144 +24,87 @@
WHERE {
?subject ?property ?role .
?role a ?objectType .
?role a core:InvestigatorRole .
?role vitro:mostSpecificType ?subclass
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity))
OPTIONAL { ?activity rdfs:label ?activityLabel }
}
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity
LET (?activityName := afn:localname(?activity))
OPTIONAL { ?activity rdfs:label ?activityLabel }
}
OPTIONAL { ?activity core:grantAwardedBy ?awardedBy .
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:grantAwardedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel
}
OPTIONAL { ?activity core:administeredBy ?adminedBy .
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:administeredBy ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole
OPTIONAL { ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
}
OPTIONAL { ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
}
}
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?grant .
?grant core:dateTimeInterval ?dateTimeIntervalGrant
OPTIONAL { ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
}
OPTIONAL { ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
}
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
}
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
}
OPTIONAL { ?role core:hideFromDisplay ?hideThis }
FILTER ( bound(?activity) &amp;&amp; ?subclass = ?objectType)
FILTER ( ?subclass = core:InvestigatorRole)
} ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&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;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel
} WHERE {
{
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity
} UNION
{
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel
}
}
</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;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity rdfs:label ?activityLabel
} WHERE {
{
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity
} UNION
{
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity rdfs:label ?activityLabel
}
}
</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 ?role .
?role a ?objectType .
?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?role ?roleProperty ?roleValue .
?activity rdfs:label ?activityName .
?activity rdfs:label ?activityLabel .
?activity core:grantAwardedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel .
?activity core:administeredBy ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel
} WHERE {
{
?subject ?property ?role
?subject ?property ?role .
?role a core:InvestigatorRole .
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role a core:InvestigatorRole .
?role ?roleProperty ?roleValue
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity rdfs:label ?activityName
?activity a core:Grant .
?activity rdfs:label ?activityLabel
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:grantAwardedBy ?awardedBy
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:grantAwardedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:administeredBy ?adminedBy
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:administeredBy ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel
}
@ -172,13 +115,13 @@
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role a core:InvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role a core:InvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
@ -189,13 +132,13 @@
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role a core:InvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role a core:InvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
@ -205,16 +148,18 @@
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?grant .
?grant core:dateTimeInterval ?dateTimeIntervalGrant .
?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?grant .
?grant core:dateTimeInterval ?dateTimeIntervalGrant .
?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
}
@ -224,16 +169,18 @@
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?grant .
?grant core:dateTimeInterval ?dateTimeIntervalGrant .
?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?grant .
?grant core:dateTimeInterval ?dateTimeIntervalGrant .
?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
}

View file

@ -30,68 +30,50 @@
OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation rdfs:label ?presentationLabel .
LET (?presentationName := afn:localname(?presentation))
OPTIONAL { ?presentation rdfs:label ?presentationLabel }
OPTIONAL { ?conference a bibo:Conference .
OPTIONAL { ?conference rdfs:label ?conferenceLabel }
{
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference
} UNION {
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation
}
}
OPTIONAL {
{
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference
} UNION {
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?workshop
}
OPTIONAL { ?conference rdfs:label ?conferenceLabel }
}
OPTIONAL { ?series a vivo:EventSeries .
OPTIONAL { ?series rdfs:label ?seriesLabel }
{
?presentation vivo:inEventWithin ?series
} UNION {
?series vivo:seriesForEvent ?presentation
}
}
OPTIONAL {
{
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop vivo:inEventSeries ?series
} UNION {
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?series vivo:seriesForEvent ?workshop
}
OPTIONAL { ?series rdfs:label ?seriesLabel }
}
<collated>
?presentation vitro:mostSpecificType ?subclass .
{
?subclass rdfs:subClassOf vivo:Presentation
} UNION {
?subclass owl:equivalentClass vivo:Presentation
}
</collated>
}
OPTIONAL { ?role vivo:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval vivo:start ?dateTimeStartValue .
?dateTimeStartValue vivo:dateTime ?dateTime
}
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?conference a bibo:Conference .
?conference rdfs:label ?conferenceLabel
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?workshop .
?conference rdfs:label ?conferenceLabel
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation vivo:inEventWithin ?series .
?series vivo:seriesForEvent ?presentation .
?series rdfs:label ?seriesLabel
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?workshop vivo:inEventSeries ?series .
?series vivo:seriesForEvent ?workshop .
?series rdfs:label ?seriesLabel
}
<collated>
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation vitro:mostSpecificType ?subclass .
}
</collated>
OPTIONAL { ?role vivo:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval vivo:start ?dateTimeStartValue .
?dateTimeStartValue vivo:dateTime ?dateTime
}
<critical-data-required>
@ -101,44 +83,18 @@
} ORDER BY <collated>?subclass</collated> DESC(?dateTime) ?presentationLabel ?presentationName
</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;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf vivo:Presentation .
?subclass owl:equivalentClass vivo:Presentation .
} WHERE {
{
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf vivo:Presentation
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation vitro:mostSpecificType ?subclass .
?subclass owl:equivalentClass vivo:Presentation
}
}
</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;
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;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role ?roleProperty ?roleValue .
?presentation rdfs:label ?presentationLabel
?role rdfs:label ?roleLabel .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation rdfs:label ?presentationLabel .
?presentation vitro:mostSpecificType ?subclass .
} WHERE {
{
?subject ?property ?role .
@ -146,12 +102,19 @@
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role ?roleProperty ?roleValue
?role rdfs:label ?roleLabel .
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation rdfs:label ?presentationLabel
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation vitro:mostSpecificType ?subclass .
}
}
</query-construct>
@ -164,37 +127,25 @@
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
?conference a bibo:Conference .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference a bibo:Conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?conference rdfs:label ?conferenceLabel
} WHERE {
{
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?conference a bibo:Conference .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference
?role a vivo:PresenterRole .
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?conference a bibo:Conference .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference rdfs:label ?conferenceLabel
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?conference a bibo:Conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?conference a bibo:Conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?conference a bibo:Conference .
?conference rdfs:label ?conferenceLabel
}
}
@ -208,43 +159,32 @@
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?workshop a bibo:Workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?workshop .
?conference a bibo:Conference .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?conference rdfs:label ?conferenceLabel
} WHERE {
{
?subject ?property ?role .
?role a vivo:PresenterRole .
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?conference a bibo:Conference .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?conference a bibo:Conference .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference rdfs:label ?conferenceLabel
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?conference a bibo:Conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?conference a bibo:Conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?conference rdfs:label ?conferenceLabel
?workshop a bibo:Workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?workshop .
?conference a bibo:Conference .
?conference rdfs:label ?conferenceLabel
}
}
</query-construct>
@ -257,6 +197,8 @@
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?series a vivo:EventSeries .
?presentation vivo:inEventSeries ?series .
?series vivo:seriesForEvent ?presentation .
@ -266,27 +208,13 @@
{
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?series a vivo:EventSeries .
?presentation vivo:inEventSeries ?series
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?series a vivo:EventSeries .
?presentation vivo:inEventSeries ?series .
?series rdfs:label ?seriesLabel
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?series a vivo:EventSeries .
?series vivo:seriesForEvent ?presentation
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?series a vivo:EventSeries .
?series vivo:seriesForEvent ?presentation .
?series rdfs:label ?seriesLabel
}
@ -301,42 +229,30 @@
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?workshop a bibo:Workshop .
?workshop vivo:inEventSeries ?series .
?series vivo:seriesForEvent ?workshop .
?series a vivo:EventSeries .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?series rdfs:label ?seriesLabel
} WHERE {
{
?subject ?property ?role .
?role a vivo:PresenterRole .
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?series a vivo:EventSeries .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop vivo:inEventSeries ?series
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?series a vivo:EventSeries .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop vivo:inEventSeries ?series .
?series rdfs:label ?seriesLabel
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?series a vivo:EventSeries .
?series vivo:seriesForEvent ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?series a vivo:EventSeries .
?series vivo:seriesForEvent ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?workshop a bibo:Workshop .
?workshop vivo:inEventSeries ?series .
?series vivo:seriesForEvent ?workshop .
?series a vivo:EventSeries .
?series rdfs:label ?seriesLabel
}
}

View file

@ -0,0 +1,188 @@
<?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 afn: &lt;http://jena.hpl.hp.com/ARQ/function#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&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;
SELECT DISTINCT
?role
?activity ?activityName
?activityLabel
?awardedBy
?adminedBy
?awardedByLabel
?adminedByLabel
?dateTimeStartRole ?dateTimeEndRole
?dateTimeStartGrant ?dateTimeEndGrant
?hideThis
WHERE {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity))
}
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:grantAwardedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel
}
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:administeredBy ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
}
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
}
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
}
OPTIONAL { ?role core:hideFromDisplay ?hideThis }
} ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
</query-select>
<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 ?role .
?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?role ?roleProperty ?roleValue .
?activity rdfs:label ?activityLabel .
?activity core:grantAwardedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel .
?activity core:administeredBy ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel
} WHERE {
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
} UNION {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role ?roleProperty ?roleValue
} UNION {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity rdfs:label ?activityLabel
} UNION {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:grantAwardedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel
} UNION {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:administeredBy ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
} WHERE {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
} WHERE {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
} WHERE {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
} WHERE {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
}
</query-construct>
<template>propStatement-hasInvestigatorRole.ftl</template>
</list-view-config>

View file

@ -22,18 +22,20 @@
?subject ?property ?role
OPTIONAL { ?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass
OPTIONAL { ?activity rdfs:label ?activityName }
OPTIONAL { ?subclass rdfs:label ?subclassLabel }
}
?activity rdfs:label ?activityName .
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
OPTIONAL { ?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?subclassLabel
}
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
}
} ORDER BY <collated> ?subclass </collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityName
@ -60,20 +62,11 @@
?subject ?property ?role .
?role a core:ReviewerRole .
?role vitro:mostSpecificType ?roleSubclass
} UNION {
?subject ?property ?role .
?role a core:ReviewerRole .
?role core:roleContributesTo ?activity
} UNION {
?subject ?property ?role .
?role a core:ReviewerRole .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName .
} UNION {
?subject ?property ?role .
?role a core:ReviewerRole .
?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass
} UNION {
?subject ?property ?role .
?role a core:ReviewerRole .

View file

@ -23,7 +23,6 @@
WHERE {
?subject ?property ?role .
?role a ?objectType .
?role vitro:mostSpecificType ?roleSubclass
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel
@ -46,25 +45,15 @@
?activity vitro:mostSpecificType ?subclass
</collated>
}
<!-- for research activities where the activity involves a grant -->
OPTIONAL { ?role core:relatedBy ?activity .
?activity rdfs:label ?activityLabel
<collated>
?activity vitro:mostSpecificType ?subclass
</collated>
}
OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL { ?role core:hideFromDisplay ?hideThis }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
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
}
FILTER ( ?objectType = ?roleSubclass )
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
</query-select>
@ -84,22 +73,6 @@
}
</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;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?role .
?role core:relatedBy ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?role core:relatedBy ?activity .
?activity vitro:mostSpecificType ?subclass
}
</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;
@ -141,26 +114,27 @@
?activity rdfs:label ?activityName
} WHERE {
{
?subject ?property ?role
?subject ?property ?role .
?role a ?objectType .
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role ?roleProperty ?roleValue
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role core:relates ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role core:relatedBy ?activity .
?activity rdfs:label ?activityName
}
}
</query-construct>

View file

@ -18,30 +18,22 @@
?subject ?property ?authorship .
OPTIONAL { ?authorship core:rank ?rank }
OPTIONAL { ?authorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName
<collated>
OPTIONAL { ?person vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Person
}
</collated>
?person a foaf:Person .
?person rdfs:label ?personName
<collated>
OPTIONAL { ?authorship core:relates ?person .
?person a foaf:Person .
?person vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Person
}
</collated>
}
<critical-data-required>
FILTER ( bound(?person) )
</critical-data-required>
} ORDER BY <collated> ?subclass </collated> ?rank ?personName
</query-select>
<query-construct>
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT {
?subclass rdfs:subClassOf foaf:Person
} WHERE {
?subclass rdfs:subClassOf foaf:Person
}
</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;
@ -54,7 +46,8 @@
?authorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName .
?person vitro:mostSpecificType ?subclass
?person vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Person
} WHERE {
{
?subject ?property ?authorship .
@ -75,7 +68,8 @@
?authorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName .
?person vitro:mostSpecificType ?subclass
?person vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Person
}
}
</query-construct>

View file

@ -18,30 +18,22 @@
?subject ?property ?editorship .
OPTIONAL { ?editorship core:rank ?rank }
OPTIONAL { ?editorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName
<collated>
OPTIONAL { ?person vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Person
}
</collated>
}
?person a foaf:Person .
?person rdfs:label ?personName
}
<collated>
OPTIONAL { ?editorship core:relates ?person .
?person a foaf:Person .
?person vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Person
}
</collated>
<critical-data-required>
FILTER ( bound(?person) )
</critical-data-required>
} ORDER BY <collated> ?subclass </collated> ?rank ?personName
</query-select>
<query-construct>
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT {
?subclass rdfs:subClassOf foaf:Person
} WHERE {
?subclass rdfs:subClassOf foaf:Person
}
</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;
@ -54,7 +46,8 @@
?editorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName .
?person vitro:mostSpecificType ?subclass
?person vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Person
} WHERE {
{
?subject ?property ?editorship .
@ -75,7 +68,8 @@
?editorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName .
?person vitro:mostSpecificType ?subclass
?person vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Person
}
}
</query-construct>

View file

@ -27,27 +27,25 @@
?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .
LET (?issuedCredentialLocal := afn:localname(?issuedCredential))
OPTIONAL { ?issuedCredential rdfs:label ?issuedCredentialLabel }
OPTIONAL {?issuedCredential rdfs:label ?issuedCredentialLabel }
OPTIONAL { ?issuedCredential core:relates ?credential .
?credential a core:Credential .
?credential core:relatedBy ?issuedCredential .
?credential rdfs:label ?credentialLabel .
LET (?credentialLocal := afn:localname(?credential))
?credential core:relatedBy ?issuedCredential
OPTIONAL { ?credential rdfs:label ?credentialLabel }
}
OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
}
OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
}
OPTIONAL { ?issuedCredential core:dateIssued ?dateTimeValue
OPTIONAL { ?dateTimeValue core:dateTime ?dateTime }
}
} ORDER BY DESC(?dateTime) DESC(?dateTimeEnd)
}
OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
OPTIONAL { ?issuedCredential core:dateIssued ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
}
} ORDER BY DESC(?dateTime) DESC(?dateTimeEnd)
</query-select>
<query-construct>

View file

@ -29,16 +29,15 @@
</collated>
OPTIONAL { ?position rdfs:label ?positionTitle }
OPTIONAL { ?position core:hideFromDisplay ?hideThis }
OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
# Get current positions only: end date is either null or not in the past
}
# NOT EXISTS { ?position core:hideFromDisplay ?hideThis }
FILTER ( !bound(?dateTimeEnd) ||
afn:substring(str(?dateTimeEnd), 0, 4) &gt;= afn:substring(str(afn:now()), 0, 4) )
<critical-data-required>

View file

@ -19,27 +19,33 @@
?org ?orgName
?middleOrg ?middleOrgName
?outerOrg ?outerOrgName
?dateTimeStart ?dateTimeEnd WHERE {
?subject ?property ?position
?dateTimeStart ?dateTimeEnd
WHERE {
?subject ?property ?position .
OPTIONAL { ?position core:relates ?org .
?org rdfs:label ?orgName
OPTIONAL { ?org obo:BFO_0000050 ?middleOrg .
?middleOrg rdfs:label ?middleOrgName
OPTIONAL { ?middleOrg obo:BFO_0000050 ?outerOrg .
?outerOrg rdfs:label ?outerOrgName
}
}
}
OPTIONAL { ?position core:relates ?org .
?org rdfs:label ?orgName .
?org obo:BFO_0000050 ?middleOrg .
?middleOrg rdfs:label ?middleOrgName
}
OPTIONAL { ?position core:relates ?org .
?org rdfs:label ?orgName .
?org obo:BFO_0000050 ?middleOrg .
?middleOrg obo:BFO_0000050 ?outerOrg .
?outerOrg rdfs:label ?outerOrgName
}
OPTIONAL { ?position rdfs:label ?positionTitle }
OPTIONAL { ?position core:hrJobTitle ?hrJobTitle }
OPTIONAL { ?position core:rank ?rank }
OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
<collated>
OPTIONAL { ?position vitro:mostSpecificType ?subclass .
@ -75,7 +81,6 @@
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
CONSTRUCT {
?subject ?property ?position .
?position a core:Position .
?position ?positionProperty ?positionValue .
?org rdfs:label ?orgName .
?org obo:BFO_0000050 ?middleOrg .
@ -86,14 +91,7 @@
{
?subject ?property ?position .
?position a core:Position .
} UNION {
?subject ?property ?position .
?position a core:Position .
?position ?positionProperty ?positionValue
} UNION {
?subject ?property ?position .
?position a core:Position .
?position core:rank ?rank
} UNION {
?subject ?property ?position .
?position a core:Position .
@ -105,12 +103,6 @@
?position a core:Position .
?position core:relates ?org .
?org a foaf:Organization .
?org obo:BFO_0000050 ?middleOrg
} UNION {
?subject ?property ?position .
?position a core:Position .
?position core:relates ?org .
?org a foaf:Organization .
?org obo:BFO_0000050 ?middleOrg .
?middleOrg rdfs:label ?middleOrgName
} UNION {
@ -119,13 +111,6 @@
?position core:relates ?org .
?org a foaf:Organization .
?org obo:BFO_0000050 ?middleOrg .
?middleOrg obo:BFO_0000050 ?outerOrg
} UNION {
?subject ?property ?position .
?position a core:Position .
?position core:positionInOrganization ?org .
?org a foaf:Organization .
?org obo:BFO_0000050 ?middleOrg .
?middleOrg obo:BFO_0000050 ?outerOrg .
?outerOrg rdfs:label ?outerOrgName
}
@ -136,28 +121,22 @@
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?position .
?position a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?position .
?position a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<!--
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?position .
?position a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
@ -169,6 +148,6 @@
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
-->
<template>propStatement-personInPosition.ftl</template>
</list-view-config>

View file

@ -12,8 +12,8 @@
?preferredTitle
WHERE {
?subject ?property ?vcard .
?vcard vcard:hasTitle ?title
OPTIONAL { ?title vcard:title ?preferredTitle }
?vcard vcard:hasTitle ?title .
?title vcard:title ?preferredTitle
}
</query-select>

View file

@ -30,23 +30,27 @@ http://vivoweb.org/ontology/core#realizedRole and http://vivoweb.org/ontology/co
# We need ?subclass in the uncollated query to get the roleTypeLabel
# for roles that have no label.
OPTIONAL { ?role vitro:mostSpecificType ?subclass .
OPTIONAL { ?subclass rdfs:label ?roleTypeLabel }
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole
OPTIONAL { ?indivInRole rdfs:label ?indivLabel }
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000055&gt; ?indivInRole
OPTIONAL { ?indivInRole rdfs:label ?indivLabel }
}
OPTIONAL { ?role vitro:mostSpecificType ?subclass . }
OPTIONAL { ?role vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?roleTypeLabel
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole }
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole rdfs:label ?indivLabel
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000055&gt; ?indivInRole .
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000055&gt; ?indivInRole .
?indivInRole rdfs:label ?indivLabel
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
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) )

View file

@ -0,0 +1,157 @@
<?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 afn: &lt;http://jena.hpl.hp.com/ARQ/function#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&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;
SELECT DISTINCT <collated>?subclass</collated>
# send the property to the template, since this view supports multiple role properties
?property
?role
?roleLabel
?activity ?activityName
?activityLabel
?dateTimeStart ?dateTimeEnd
?hideThis
?objectType
WHERE {
?subject ?property ?role .
?role a core:ResearcherRole .
?role vitro:mostSpecificType ?roleSubclass
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel
<collated>
?activity vitro:mostSpecificType ?subclass
</collated>
}
OPTIONAL { ?role core:relatedBy ?activity .
?activity rdfs:label ?activityLabel
<collated>
?activity vitro:mostSpecificType ?subclass
</collated>
}
OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL { ?role core:hideFromDisplay ?hideThis }
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
}
FILTER ( ?roleSubclass = core:ResearcherRole)
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&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;
CONSTRUCT {
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:relatedBy ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:relatedBy ?activity .
?activity vitro:mostSpecificType ?subclass
}
</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;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:ResearcherRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?role a core:ResearcherRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass
}
</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 ?role .
?role a core:ResearcherRole .
?role ?roleProperty ?roleValue .
?activity rdfs:label ?activityName
} WHERE {
{
?subject ?property ?role .
?role a core:ResearcherRole .
} UNION {
?subject ?property ?role .
?role a core:ResearcherRole .
?role ?roleProperty ?roleValue
} UNION {
?subject ?property ?role .
?role a core:ResearcherRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:relatedBy ?activity .
?activity rdfs:label ?activityName
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?role .
?role a core:ResearcherRole .
?role 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 ?role .
?role a core:ResearcherRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-hasRole.ftl</template>
</list-view-config>

View file

@ -26,14 +26,19 @@
?subject ?property ?person .
OPTIONAL { ?person core:relatedBy ?position .
?position a core:Position
OPTIONAL { ?position rdfs:label ?posnLabel }
}
OPTIONAL { ?person core:relatedBy ?position .
?position a core:Position .
?position rdfs:label ?posnLabel
}
OPTIONAL { ?person rdfs:label ?personName }
OPTIONAL { ?person obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title
}
OPTIONAL { ?position core:relates ?org .
OPTIONAL { ?person core:relatedBy ?position .
?position a core:Position .
?position core:relates ?org .
?org a foaf:Organization .
?org rdfs:label ?orgLabel
}

View file

@ -0,0 +1,133 @@
<?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 afn: &lt;http://jena.hpl.hp.com/ARQ/function#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&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;
SELECT DISTINCT <collated>?subclass</collated>
# send the property to the template, since this view supports multiple role properties
?property
?role
?roleLabel
?activity ?activityName
?activityLabel
?dateTimeStart ?dateTimeEnd
?hideThis
?objectType
WHERE {
?subject ?property ?role .
?role a ?objectType .
OPTIONAL { ?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityLabel
<collated>
?activity vitro:mostSpecificType ?subclass
</collated>
}
OPTIONAL { ?role rdfs:label ?roleLabel }
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
}
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&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;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass
}
</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 ?role .
?role ?roleProperty ?roleValue .
?activity rdfs:label ?activityName
} 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 core:relates ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
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: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-hasRole.ftl</template>
</list-view-config>

View file

@ -0,0 +1,133 @@
<?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 afn: &lt;http://jena.hpl.hp.com/ARQ/function#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&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;
SELECT DISTINCT <collated>?subclass</collated>
# send the property to the template, since this view supports multiple role properties
?property
?role
?roleLabel
?activity ?activityName
?activityLabel
?dateTimeStart ?dateTimeEnd
?hideThis
?objectType
WHERE {
?subject ?property ?role .
?role a ?objectType .
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel
<collated>
?activity vitro:mostSpecificType ?subclass
</collated>
}
OPTIONAL { ?role rdfs:label ?roleLabel }
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
}
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&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;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass
}
</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 ?role .
?role ?roleProperty ?roleValue .
?activity rdfs:label ?activityName
} 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 core:relates ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
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: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-hasRole.ftl</template>
</list-view-config>

View file

@ -16,7 +16,7 @@
<#macro showRole statement>
<#local linkedIndividual>
<#if statement.presentation??>
<a href="${profileUrl(statement.uri("presentation"))}" title="${i18n().presentation_name}">${statement.presentationLabel!statement.presentationName}</a>
<a href="${profileUrl(statement.uri("presentation"))}" title="${i18n().presentation_name}">${statement.presentationLabel!statement.presentationName!""}</a>
<#else>
<#-- This shouldn't happen, but we must provide for it -->
<a href="${profileUrl(statement.uri("role"))}" title="${i18n().missing_presentation}">${i18n().missing_presentation}</a>

View file

@ -69,7 +69,7 @@ local:hasServiceProviderRoleContext a :ConfigContext ;
:qualifiedBy <http://purl.obolibrary.org/obo/ERO_0000012> .
local:hasServiceProviderRoleConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ;
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
:displayName "service to the profession" ;
vitro:displayRankAnnot 20;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
@ -84,7 +84,7 @@ local:hasClinicalRoleContext a :ConfigContext ;
:qualifiedBy <http://vivoweb.org/ontology/core#ClinicalRole> .
local:hasClinicalRoleConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ;
:listViewConfigFile "listViewConfig-hasClinicalActivity.xml"^^xsd:string ;
:displayName "clinical activities" ;
vitro:displayRankAnnot 70;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
@ -99,7 +99,7 @@ local:hasLeaderRoleContext a :ConfigContext ;
:qualifiedBy <http://vivoweb.org/ontology/core#LeaderRole> .
local:hasLeaderRoleConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ;
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
:displayName "head of" ;
vitro:displayRankAnnot 30;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
@ -114,7 +114,7 @@ local:hasMemberRoleContext a :ConfigContext ;
:qualifiedBy <http://vivoweb.org/ontology/core#MemberRole> .
local:hasMemberRoleConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ;
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
:displayName "member of" ;
vitro:displayRankAnnot 50;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
@ -129,7 +129,7 @@ local:hasTeacherRoleContext a :ConfigContext ;
:qualifiedBy <http://vivoweb.org/ontology/core#TeacherRole> .
local:hasTeacherRoleConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ;
:listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ;
:displayName "teaching activities" ;
vitro:displayRankAnnot 20;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
@ -174,7 +174,7 @@ local:hasOrganizerRoleContext a :ConfigContext ;
:qualifiedBy <http://vivoweb.org/ontology/core#OrganizerRole> .
local:hasOrganizerRoleConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ;
:listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ;
:displayName "organizer of" ;
vitro:displayRankAnnot 4;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
@ -189,7 +189,7 @@ local:hasOutreachProviderRoleContext a :ConfigContext ;
:qualifiedBy <http://vivoweb.org/ontology/core#OutreachProviderRole> .
local:hasOutreachProviderRoleConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ;
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
:displayName "outreach and community service" ;
vitro:displayRankAnnot 50;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
@ -219,7 +219,7 @@ local:hasResearcherRoleContext a :ConfigContext ;
:qualifiedBy <http://vivoweb.org/ontology/core#ResearcherRole> .
local:hasResearcherRoleConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ;
:listViewConfigFile "listViewConfig-researchActivities.xml"^^xsd:string ;
:displayName "research activities" ;
vitro:displayRankAnnot 15;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
@ -249,7 +249,7 @@ local:hasPrincipalInvestigatorRoleContext a :ConfigContext ;
:qualifiedBy <http://vivoweb.org/ontology/core#PrincipalInvestigatorRole> .
local:hasPrincipalInvestigatorRoleConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-hasInvestigatorRole.xml"^^xsd:string ;
:listViewConfigFile "listViewConfig-hasPrincipalInvestigatorRole.xml"^^xsd:string ;
:displayName "principal investigator on" ;
vitro:displayRankAnnot 20;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
@ -264,7 +264,7 @@ local:hasCo-PrincipalInvestigatorRoleContext a :ConfigContext ;
:qualifiedBy <http://vivoweb.org/ontology/core#CoPrincipalInvestigatorRole> .
local:hasCo-PrincipalInvestigatorRoleConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-hasInvestigatorRole.xml"^^xsd:string ;
:listViewConfigFile "listViewConfig-hasCoPrincipalInvestigatorRole.xml"^^xsd:string ;
:displayName "co-principal investigator on" ;
vitro:displayRankAnnot 25;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;