[VIVO-1117] Clean up list view queries, remove some dead query parts

This commit is contained in:
grahamtriggs 2015-10-23 16:07:14 +01:00
parent 5b0fc96cf4
commit f722260eed
21 changed files with 2535 additions and 2516 deletions

View file

@ -25,32 +25,45 @@
?dateTimeStart ?dateTimeStart
?dateTimeEnd ?dateTimeEnd
WHERE { WHERE
{
?subject ?property ?adviseeRole . ?subject ?property ?adviseeRole .
?adviseeRole core:relatedBy ?advisingRel . ?adviseeRole core:relatedBy ?advisingRel .
LET ( ?localName := afn:localname(?advisingRel) ) LET ( ?localName := afn:localname(?advisingRel) )
OPTIONAL { ?advisingRel rdfs:label ?advisingRelLabel } OPTIONAL { ?advisingRel rdfs:label ?advisingRelLabel }
OPTIONAL { ?advisingRel core:relates ?advisorRole . OPTIONAL
{
?advisingRel core:relates ?advisorRole .
?advisorRole <http://purl.obolibrary.org/obo/RO_0000052> ?advisor . ?advisorRole <http://purl.obolibrary.org/obo/RO_0000052> ?advisor .
?advisor a foaf:Person . ?advisor a foaf:Person .
?advisor rdfs:label ?advisorLabel ?advisor rdfs:label ?advisorLabel
} }
OPTIONAL { ?advisingRel core:degreeCandidacy ?degree . OPTIONAL
{
?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel . ?degree rdfs:label ?degreeLabel .
} }
OPTIONAL { ?advisingRel core:degreeCandidacy ?degree . OPTIONAL
{
?advisingRel core:degreeCandidacy ?degree .
?degree core:abbreviation ?degreeAbbr . ?degree core:abbreviation ?degreeAbbr .
} }
<collated> <collated>
OPTIONAL { ?advisingRel vitro:mostSpecificType ?subclass . OPTIONAL
{
?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship ?subclass rdfs:subClassOf core:AdvisingRelationship
} }
</collated> </collated>
OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart ?dateTimeStartValue core:dateTime ?dateTimeStart
} }
OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue . ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd ?dateTimeEndValue core:dateTime ?dateTimeEnd
} }
@ -61,70 +74,103 @@
<query-construct> <query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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 foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt; PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT { CONSTRUCT
?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship
} WHERE {
?subject ?property ?adviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship
}
</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 ?adviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel rdfs:label ?advisingRelLabel .
} WHERE {
{ {
?subject ?property ?adviseeRole . ?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship
} UNION {
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel rdfs:label ?advisingRelLabel
}
}
</query-construct>
<query-construct>
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT {
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole . ?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel . ?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship . ?advisingRel a core:AdvisingRelationship .
?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship .
?advisingRel rdfs:label ?advisingRelLabel .
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel .
?degree core:abbreviation ?degreeAbbr .
?advisingRel core:relates ?advisorRole . ?advisingRel core:relates ?advisorRole .
?advisorRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?advisor . ?advisorRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?advisor .
?advisor a foaf:Person . ?advisor a foaf:Person .
?advisor rdfs:label ?advisorLabel . ?advisor rdfs:label ?advisorLabel .
?advisor &lt;http://purl.obolibrary.org/obo/RO_0000053&gt; ?advisorRole . ?advisor &lt;http://purl.obolibrary.org/obo/RO_0000053&gt; ?advisorRole .
?advisorRole a core:AdvisorRole . ?advisorRole a core:AdvisorRole .
?advisingRel core:degreeCandidacy ?degree . }
?degree rdfs:label ?degreeLabel . WHERE
?degree core:abbreviation ?degreeAbbr {
} WHERE {
{ {
?subject ?property ?adviseeRole . ?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole . ?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel . ?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship . ?advisingRel a core:AdvisingRelationship .
} UNION { }
UNION
{
?subject ?property ?adviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship
}
UNION
{
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel rdfs:label ?advisingRelLabel .
}
UNION
{
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
UNION
{
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
UNION
{
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel .
}
UNION
{
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:degreeCandidacy ?degree .
?degree core:abbreviation ?degreeAbbr
}
UNION
{
?subject ?property ?adviseeRole . ?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole . ?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel . ?adviseeRole core:relatedBy ?advisingRel .
@ -136,66 +182,9 @@
?advisor &lt;http://purl.obolibrary.org/obo/RO_0000053&gt; ?advisorRole . ?advisor &lt;http://purl.obolibrary.org/obo/RO_0000053&gt; ?advisorRole .
?advisorRole a core:AdvisorRole . ?advisorRole a core:AdvisorRole .
?advisor rdfs:label ?advisorLabel ?advisor rdfs:label ?advisorLabel
} UNION {
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel .
} UNION {
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:degreeCandidacy ?degree .
?degree core:abbreviation ?degreeAbbr
} }
} }
</query-construct> </query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel 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 ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-adviseeIn.ftl</template> <template>propStatement-adviseeIn.ftl</template>
</list-view-config> </list-view-config>

View file

@ -25,32 +25,44 @@
?dateTimeStart ?dateTimeStart
?dateTimeEnd ?dateTimeEnd
WHERE { WHERE
{
?subject ?property ?advisorRole . ?subject ?property ?advisorRole .
?advisorRole core:relatedBy ?advisingRel . ?advisorRole core:relatedBy ?advisingRel .
LET ( ?localName := afn:localname(?advisingRel) ) LET ( ?localName := afn:localname(?advisingRel) )
OPTIONAL { ?advisingRel rdfs:label ?advisingRelLabel } OPTIONAL { ?advisingRel rdfs:label ?advisingRelLabel }
OPTIONAL { ?advisingRel core:relates ?adviseeRole . OPTIONAL
{
?advisingRel core:relates ?adviseeRole .
?adviseeRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?advisee . ?adviseeRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?advisee .
?advisee a foaf:Person . ?advisee a foaf:Person .
?advisee rdfs:label ?adviseeLabel ?advisee rdfs:label ?adviseeLabel
} }
OPTIONAL { ?advisingRel core:degreeCandidacy ?degree . OPTIONAL {
?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel . ?degree rdfs:label ?degreeLabel .
} }
OPTIONAL { ?advisingRel core:degreeCandidacy ?degree . OPTIONAL
{
?advisingRel core:degreeCandidacy ?degree .
?degree core:abbreviation ?degreeAbbr ?degree core:abbreviation ?degreeAbbr
} }
<collated> <collated>
OPTIONAL { ?advisingRel vitro:mostSpecificType ?subclass . OPTIONAL
{
?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship ?subclass rdfs:subClassOf core:AdvisingRelationship
} }
</collated> </collated>
OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart ?dateTimeStartValue core:dateTime ?dateTimeStart
} }
OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue . ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd ?dateTimeEndValue core:dateTime ?dateTimeEnd
} }
@ -62,52 +74,101 @@
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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; PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship
} WHERE {
?subject ?property ?advisorRole .
?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship
}
</query-construct>
<query-construct>
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt; PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT { CONSTRUCT
{
?subject ?property ?advisorRole . ?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole . ?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel . ?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship . ?advisingRel a core:AdvisingRelationship .
?advisingRel rdfs:label ?advisingRelLabel . ?advisingRel rdfs:label ?advisingRelLabel .
?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship .
?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel .
?degree core:abbreviation ?degreeAbbr .
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
?advisingRel core:relates ?adviseeRole . ?advisingRel core:relates ?adviseeRole .
?adviseeRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?advisee . ?adviseeRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?advisee .
?advisee a foaf:Person . ?advisee a foaf:Person .
?advisee rdfs:label ?adviseeLabel . ?advisee rdfs:label ?adviseeLabel .
?advisee &lt;http://purl.obolibrary.org/obo/RO_0000053&gt; ?adviseeRole . ?advisee &lt;http://purl.obolibrary.org/obo/RO_0000053&gt; ?adviseeRole .
?adviseeRole a core:AdviseeRole . ?adviseeRole a core:AdviseeRole .
?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel .
?degree core:abbreviation ?degreeAbbr
} WHERE { } WHERE {
{ {
?subject ?property ?advisorRole . ?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole . ?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel . ?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship . ?advisingRel a core:AdvisingRelationship .
} UNION { }
UNION
{
?subject ?property ?advisorRole . ?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole . ?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel . ?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship . ?advisingRel a core:AdvisingRelationship .
?advisingRel rdfs:label ?advisingRelLabel ?advisingRel rdfs:label ?advisingRelLabel
} UNION { }
UNION
{
?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship
}
UNION
{
?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel .
}
UNION
{
?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:degreeCandidacy ?degree .
?degree core:abbreviation ?degreeAbbr .
}
UNION
{
?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
UNION
{
?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
UNION
{
?subject ?property ?advisorRole . ?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole . ?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel . ?advisorRole core:relatedBy ?advisingRel .
@ -119,65 +180,9 @@
?advisee &lt;http://purl.obolibrary.org/obo/RO_0000053&gt; ?adviseeRole . ?advisee &lt;http://purl.obolibrary.org/obo/RO_0000053&gt; ?adviseeRole .
?adviseeRole a core:AdviseeRole . ?adviseeRole a core:AdviseeRole .
?advisee rdfs:label ?adviseeLabel ?advisee rdfs:label ?adviseeLabel
} UNION {
?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel .
} UNION {
?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:degreeCandidacy ?degree .
?degree core:abbreviation ?degreeAbbr
} }
} }
</query-construct> </query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel 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 ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisorRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-advisorIn.ftl</template> <template>propStatement-advisorIn.ftl</template>
</list-view-config> </list-view-config>

View file

@ -28,48 +28,48 @@
WHERE WHERE
{ {
?subject ?property ?authorship . ?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource . ?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName . ?infoResource rdfs:label ?infoResourceName .
OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass }
OPTIONAL { ?infoResource bibo:volume ?volume } OPTIONAL { ?infoResource bibo:volume ?volume }
OPTIONAL { ?infoResource bibo:pageStart ?startPage } OPTIONAL { ?infoResource bibo:pageStart ?startPage }
OPTIONAL { ?infoResource bibo:pageEnd ?endPage } OPTIONAL { ?infoResource bibo:pageEnd ?endPage }
OPTIONAL { ?infoResource core:placeOfPublication ?locale } OPTIONAL { ?infoResource core:placeOfPublication ?locale }
OPTIONAL { OPTIONAL
{
?infoResource bibo:reproducedIn ?appearsInObj . ?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn ?appearsInObj rdfs:label ?appearsIn .
} }
OPTIONAL
OPTIONAL { {
?infoResource core:publisher ?publisherObj . ?infoResource core:publisher ?publisherObj .
?publisherObj rdfs:label ?publisher ?publisherObj rdfs:label ?publisher .
} }
OPTIONAL
OPTIONAL { {
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf .
}
OPTIONAL
{
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal .
}
OPTIONAL
{
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
}
OPTIONAL
{
?infoResource core:relatedBy ?editorship . ?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?editorObj . ?editorship core:relates ?editorObj .
?editorObj rdfs:label ?editor ?editorObj rdfs:label ?editor .
}
OPTIONAL {
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf
}
OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass }
OPTIONAL {
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal
}
OPTIONAL {
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
} }
OPTIONAL { ?authorship core:hideFromDisplay ?hideThis } OPTIONAL { ?authorship core:hideFromDisplay ?hideThis }
<critical-data-required> <critical-data-required>
FILTER ( bound(?infoResource) ) FILTER ( bound(?infoResource) )
</critical-data-required> </critical-data-required>

View file

@ -22,112 +22,122 @@
?dateTimeEnd ?dateTimeEnd
?dateTime ?dateTime
WHERE { WHERE
{
?subject ?property ?awardReceipt . ?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt . ?awardReceipt a core:AwardReceipt .
OPTIONAL { ?awardReceipt rdfs:label ?receiptLabel } OPTIONAL { ?awardReceipt rdfs:label ?receiptLabel }
OPTIONAL { ?awardReceipt core:relates ?award . OPTIONAL
{
?awardReceipt core:relates ?award .
?award a core:Award . ?award a core:Award .
?award core:relatedBy ?awardReceipt . ?award core:relatedBy ?awardReceipt .
?award rdfs:label ?awardLabel ?award rdfs:label ?awardLabel .
} }
OPTIONAL { ?awardReceipt core:assignedBy ?assignedBy . OPTIONAL
?assignedBy rdfs:label ?assignedByLabel {
?awardReceipt core:assignedBy ?assignedBy .
?assignedBy rdfs:label ?assignedByLabel .
} }
OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart ?dateTimeStartValue core:dateTime ?dateTimeStart .
} }
OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue . ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd ?dateTimeEndValue core:dateTime ?dateTimeEnd .
} }
OPTIONAL { ?awardReceipt core:dateTimeValue ?dateTimeValue . OPTIONAL
?dateTimeValue core:dateTime ?dateTime {
?awardReceipt core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
} }
} ORDER BY DESC(?dateTime) DESC(?dateTimeEnd) } ORDER BY DESC(?dateTime) DESC(?dateTimeEnd)
</query-select> </query-select>
<query-construct> <query-construct>
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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 foaf: &lt;http://xmlns.com/foaf/0.1/&gt; CONSTRUCT
{
CONSTRUCT {
?subject ?property ?awardReceipt . ?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt . ?awardReceipt a core:AwardReceipt .
?awardReceipt rdfs:label ?receiptLabel . ?awardReceipt rdfs:label ?receiptLabel .
?awardReceipt core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
?awardReceipt core:assignedBy ?assignedBy .
?assignedBy rdfs:label ?assignedByLabel .
?awardReceipt core:relates ?award . ?awardReceipt core:relates ?award .
?award a core:Award . ?award a core:Award .
?award core:relatedBy ?awardReceipt . ?award core:relatedBy ?awardReceipt .
?award rdfs:label ?awardLabel . ?award rdfs:label ?awardLabel .
?awardReceipt core:assignedBy ?assignedBy . }
?assignedBy rdfs:label ?assignedByLabel . WHERE
?awardReceipt core:dateTimeValue ?dateTimeValue . {
?dateTimeValue core:dateTime ?dateTime
} WHERE {
{ {
?subject ?property ?awardReceipt . ?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt . ?awardReceipt a core:AwardReceipt .
} UNION { }
?subject ?property ?awardReceipt . UNION
?awardReceipt a core:AwardReceipt . {
?awardReceipt rdfs:label ?receiptLabel
} UNION {
?subject ?property ?awardReceipt . ?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt . ?awardReceipt a core:AwardReceipt .
?awardReceipt rdfs:label ?receiptLabel . ?awardReceipt rdfs:label ?receiptLabel .
?awardReceipt core:relates ?award . }
?award a core:Award . UNION
?award core:relatedBy ?awardReceipt . {
?award rdfs:label ?awardLabel
} UNION {
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt rdfs:label ?receiptLabel .
?awardReceipt core:assignedBy ?assignedBy .
?assignedBy rdfs:label ?assignedByLabel
} UNION {
?subject ?property ?awardReceipt . ?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt . ?awardReceipt a core:AwardReceipt .
?awardReceipt core:dateTimeValue ?dateTimeValue . ?awardReceipt core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime ?dateTimeValue core:dateTime ?dateTime .
} }
} UNION
</query-construct> {
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?awardReceipt . ?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt . ?awardReceipt a core:AwardReceipt .
?awardReceipt core:dateTimeInterval ?dateTimeInterval . ?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart ?dateTimeStartValue core:dateTime ?dateTimeStart .
} WHERE {
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} }
</query-construct> UNION
{
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?awardReceipt . ?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt . ?awardReceipt a core:AwardReceipt .
?awardReceipt core:dateTimeInterval ?dateTimeInterval . ?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue . ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd ?dateTimeEndValue core:dateTime ?dateTimeEnd .
} WHERE { }
UNION
{
?subject ?property ?awardReceipt . ?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt . ?awardReceipt a core:AwardReceipt .
?awardReceipt core:dateTimeInterval ?dateTimeInterval . ?awardReceipt core:assignedBy ?assignedBy .
?dateTimeInterval core:end ?dateTimeEndValue . ?assignedBy rdfs:label ?assignedByLabel .
?dateTimeEndValue core:dateTime ?dateTimeEnd }
UNION
{
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt core:relates ?award .
?award a core:Award .
?award core:relatedBy ?awardReceipt .
?award rdfs:label ?awardLabel .
}
} }
</query-construct> </query-construct>
<template>propStatement-awardOrHonor.ftl</template> <template>propStatement-awardOrHonor.ftl</template>

View file

@ -22,40 +22,121 @@
?dateTimeEnd ?dateTimeEnd
?dateTime ?dateTime
WHERE { WHERE
{
?subject ?property ?awardReceipt . ?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt . ?awardReceipt a core:AwardReceipt .
OPTIONAL { ?awardReceipt rdfs:label ?receiptLabel } OPTIONAL { ?awardReceipt rdfs:label ?receiptLabel }
OPTIONAL { ?awardReceipt core:relates ?award . OPTIONAL
{
?awardReceipt core:relates ?award .
?award a core:Award . ?award a core:Award .
?award core:relatedBy ?awardReceipt . ?award core:relatedBy ?awardReceipt .
?award rdfs:label ?awardLabel ?award rdfs:label ?awardLabel .
} }
OPTIONAL { ?awardReceipt core:relates ?givenTo . OPTIONAL
{
?awardReceipt core:relates ?givenTo .
?givenTo a foaf:Person . ?givenTo a foaf:Person .
?givenTo rdfs:label ?givenToLabel ?givenTo rdfs:label ?givenToLabel .
} }
OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart ?dateTimeStartValue core:dateTime ?dateTimeStart .
} }
OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue . ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd ?dateTimeEndValue core:dateTime ?dateTimeEnd .
} }
OPTIONAL { ?awardReceipt core:dateTimeValue ?dateTimeValue . OPTIONAL
?dateTimeValue core:dateTime ?dateTime {
?awardReceipt core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
} }
} ORDER BY DESC(?dateTime) DESC(?dateTimeEnd) } ORDER BY DESC(?dateTime) DESC(?dateTimeEnd)
</query-select> </query-select>
<query-construct> <query-construct>
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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 foaf: &lt;http://xmlns.com/foaf/0.1/&gt; PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT
{
?subject ?property ?awardReceipt .
CONSTRUCT { ?awardReceipt a core:AwardReceipt .
?awardReceipt rdfs:label ?receiptLabel .
?awardReceipt core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
?awardReceipt core:relates ?givenTo .
?givenTo a foaf:Person .
?givenTo rdfs:label ?givenToLabel .
?awardReceipt core:relates ?award .
?award a core:Award .
?award core:relatedBy ?awardReceipt .
?award rdfs:label ?awardLabel .
}
WHERE
{
{
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
}
UNION
{
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt rdfs:label ?receiptLabel .
}
UNION
{
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
}
UNION
{
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
UNION
{
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
UNION
{
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt rdfs:label ?receiptLabel .
?awardReceipt core:relates ?givenTo .
?givenTo a foaf:Person .
?givenTo rdfs:label ?givenToLabel .
}
UNION
{
?subject ?property ?awardReceipt . ?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt . ?awardReceipt a core:AwardReceipt .
?awardReceipt rdfs:label ?receiptLabel . ?awardReceipt rdfs:label ?receiptLabel .
@ -63,75 +144,8 @@
?award a core:Award . ?award a core:Award .
?award core:relatedBy ?awardReceipt . ?award core:relatedBy ?awardReceipt .
?award rdfs:label ?awardLabel . ?award rdfs:label ?awardLabel .
?awardReceipt core:relates ?givenTo .
?givenTo a foaf:Person .
?givenTo rdfs:label ?givenToLabel .
?awardReceipt core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
} WHERE {
{
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
} UNION {
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt rdfs:label ?receiptLabel
} UNION {
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt rdfs:label ?receiptLabel .
?awardReceipt core:relates ?award .
?award a core:Award .
?award core:relatedBy ?awardReceipt .
?award rdfs:label ?awardLabel
} UNION {
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt rdfs:label ?receiptLabel .
?awardReceipt core:relates ?givenTo .
?givenTo a foaf:Person .
?givenTo rdfs:label ?givenToLabel
} UNION {
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
} }
} }
</query-construct> </query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt 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 ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-awardOrHonorGiven.ftl</template> <template>propStatement-awardOrHonorGiven.ftl</template>
</list-view-config> </list-view-config>

View file

@ -15,20 +15,32 @@
?precisionStart ?precisionStart
?valueEnd ?valueEndName ?valueEnd ?valueEndName
?dateTimeEnd ?dateTimeEnd
?precisionEnd WHERE { ?precisionEnd
WHERE
{
?subject ?property ?dateTimeInterval ?subject ?property ?dateTimeInterval
OPTIONAL { ?dateTimeInterval core:start ?valueStart OPTIONAL
{
?dateTimeInterval core:start ?valueStart
LET (?valueStartName := afn:localname(?valueStart)) LET (?valueStartName := afn:localname(?valueStart))
OPTIONAL { ?valueStart core:dateTime ?dateTimeStart } OPTIONAL { ?valueStart core:dateTime ?dateTimeStart }
OPTIONAL { ?valueStart core:dateTimePrecision ?dateTimePrecisionStart OPTIONAL
{
?valueStart core:dateTimePrecision ?dateTimePrecisionStart
LET (?precisionStart := afn:localname(?dateTimePrecisionStart)) LET (?precisionStart := afn:localname(?dateTimePrecisionStart))
} }
} }
OPTIONAL { ?dateTimeInterval core:end ?valueEnd OPTIONAL
{
?dateTimeInterval core:end ?valueEnd
LET (?valueEndName := afn:localname(?valueEnd)) LET (?valueEndName := afn:localname(?valueEnd))
OPTIONAL { ?valueEnd core:dateTime ?dateTimeEnd } OPTIONAL { ?valueEnd core:dateTime ?dateTimeEnd }
OPTIONAL { ?valueEnd core:dateTimePrecision ?dateTimePrecisionEnd OPTIONAL
{
?valueEnd core:dateTimePrecision ?dateTimePrecisionEnd
LET (?precisionEnd := afn:localname(?dateTimePrecisionEnd)) LET (?precisionEnd := afn:localname(?dateTimePrecisionEnd))
} }
} }
@ -44,53 +56,39 @@
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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;
CONSTRUCT { CONSTRUCT
?subject ?property ?dateTimeInterval .
?dateTimeInterval core:start ?valueStart .
?dateTimeInterval core:end ?valueEnd .
?dateTimeInterval rdfs:label ?label
} WHERE {
{ {
?subject ?property ?dateTimeInterval
}
UNION {
?subject ?property ?dateTimeInterval . ?subject ?property ?dateTimeInterval .
?dateTimeInterval core:start ?valueStart ?dateTimeInterval rdfs:label ?label .
?dateTimeInterval core:start ?sStart .
?dateTimeInterval core:end ?sEnd .
?sStart ?p ?o .
?sEnd ?p ?o .
} }
UNION { WHERE
{
{
?subject core:dateTimeInterval ?dateTimeInterval .
}
UNION
{
?subject core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval rdfs:label ?label .
}
UNION
{
?subject ?property ?dateTimeInterval . ?subject ?property ?dateTimeInterval .
?dateTimeInterval core:end ?valueEnd ?dateTimeInterval core:start ?sStart .
?sStart ?p ?o .
} }
UNION { UNION
{
?subject ?property ?dateTimeInterval . ?subject ?property ?dateTimeInterval .
?dateTimeInterval rdfs:label ?label ?dateTimeInterval core:end ?sEnd .
?sEnd ?p ?o .
} }
} }
</query-construct> </query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?valueStart ?p ?o
} WHERE {
?subject ?property ?dateTimeInterval .
?dateTimeInterval core:start ?valueStart .
?valueStart ?p ?o
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?valueEnd ?p ?o
} WHERE {
?subject ?property ?dateTimeInterval .
?dateTimeInterval core:end ?valueEnd .
?valueEnd ?p ?o
}
</query-construct>
<template>propStatement-dateTimeInterval.ftl</template> <template>propStatement-dateTimeInterval.ftl</template>
</list-view-config> </list-view-config>

View file

@ -21,26 +21,35 @@
?localName ?localName
?type ?type
?objectType ?objectType
?title WHERE { ?title
WHERE
{
?subject ?property ?object . ?subject ?property ?object .
?object a ?objectType . ?object a ?objectType .
LET (?localName := afn:localname(?object)) LET (?localName := afn:localname(?object))
OPTIONAL { ?object rdfs:label ?label } OPTIONAL
{
?object rdfs:label ?label .
}
OPTIONAL { OPTIONAL
{
# Get mostSpecificType only for Persons # Get mostSpecificType only for Persons
?object vitro:mostSpecificType ?subclass . ?object vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?type . ?subclass rdfs:label ?type .
# Display only a mostSpecificType that belongs to a classgroup. # Display only a mostSpecificType that belongs to a classgroup.
?subclass vitro:inClassGroup ?classGroup . # CONSTRUCT will apply this filter
?classGroup a vitro:ClassGroup # ?subclass vitro:inClassGroup ?classGroup .
# ?classGroup a vitro:ClassGroup .
} }
OPTIONAL { ?object obo:ARG_2000028 ?vcard . OPTIONAL
{
?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj . ?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title ?titleObj vcard:title ?title .
} }
<collated> <collated>
@ -53,25 +62,6 @@
} ORDER BY <collated> ?subclass </collated> ASC( ?label ) ASC( ?localName ) ?type } ORDER BY <collated> ?subclass </collated> ASC( ?label ) ASC( ?localName ) ?type
</query-select> </query-select>
<query-construct>
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 ?object .
?object a ?objectType .
?object rdfs:label ?label .
} WHERE {
{
?subject ?property ?object .
?object a ?objectType .
} UNION {
?subject ?property ?object .
?object rdfs:label ?label .
}
}
</query-construct>
<query-construct> <query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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;
@ -79,31 +69,44 @@
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt; PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt; PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT { CONSTRUCT
?subject ?property ?object .
?object a ?objectType .
?object vitro:mostSpecificType ?subclass .
?subclass vitro:inClassGroup ?classGroup .
?classGroup a vitro:ClassGroup .
?subclass rdfs:label ?type .
?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title
} WHERE {
{ {
?subject ?property ?object . ?subject ?property ?object .
?object a ?objectType . ?object a ?objectType .
} UNION { ?object rdfs:label ?label .
?object vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?type .
?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title .
}
WHERE
{
{
?subject ?property ?object .
?object a ?objectType .
}
UNION
{
?subject ?property ?object .
?object rdfs:label ?label .
}
UNION
{
?subject ?property ?object . ?subject ?property ?object .
?object vitro:mostSpecificType ?subclass . ?object vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?type . ?subclass rdfs:label ?type .
# Display only a mostSpecificType that belongs to a classgroup.
?subclass vitro:inClassGroup ?classGroup . ?subclass vitro:inClassGroup ?classGroup .
?classGroup a vitro:ClassGroup ?classGroup a vitro:ClassGroup .
} UNION { }
UNION
{
?subject ?property ?object . ?subject ?property ?object .
?object obo:ARG_2000028 ?vcard . ?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj . ?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title ?titleObj vcard:title ?title .
} }
} }
</query-construct> </query-construct>

View file

@ -23,7 +23,8 @@
?locale ?locale
?appearsIn ?appearsIn
?partOf ?partOf
WHERE { WHERE
{
?subject ?property ?editorship . ?subject ?property ?editorship .
?editorship core:relates ?infoResource . ?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
@ -33,21 +34,31 @@
OPTIONAL { ?infoResource bibo:pageStart ?startPage } OPTIONAL { ?infoResource bibo:pageStart ?startPage }
OPTIONAL { ?infoResource bibo:pageEnd ?endPage } OPTIONAL { ?infoResource bibo:pageEnd ?endPage }
OPTIONAL { ?infoResource core:placeOfPublication ?locale } OPTIONAL { ?infoResource core:placeOfPublication ?locale }
OPTIONAL { ?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn
}
OPTIONAL { ?infoResource core:publisher ?publisherObj .
?publisherObj rdfs:label ?publisher
}
OPTIONAL { ?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf
}
OPTIONAL { ?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal
}
OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass } OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass }
OPTIONAL { ?infoResource core:dateTimeValue ?dateTimeValue . OPTIONAL
?dateTimeValue core:dateTime ?dateTime {
?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn .
}
OPTIONAL
{
?infoResource core:publisher ?publisherObj .
?publisherObj rdfs:label ?publisher .
}
OPTIONAL
{
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf .
}
OPTIONAL
{
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal .
}
OPTIONAL
{
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
} }
<critical-data-required> <critical-data-required>
@ -56,59 +67,146 @@
} ORDER BY ?subclass DESC(?dateTime) ?infoResourceName } ORDER BY ?subclass DESC(?dateTime) ?infoResourceName
</query-select> </query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource vitro:mostSpecificType ?subclass
} WHERE {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource vitro:mostSpecificType ?subclass
}
</query-construct>
<query-construct> <query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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 bibo: &lt;http://purl.org/ontology/bibo/&gt; PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
CONSTRUCT { PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT
{
?subject ?property ?editorship . ?subject ?property ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?infoResource . ?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName . ?infoResource rdfs:label ?infoResourceName .
?infoResource vitro:mostSpecificType ?subclass .
?infoResource core:placeOfPublication ?locale .
?infoResource bibo:volume ?volume .
?infoResource bibo:pageStart ?startPage .
?infoResource bibo:pageEnd ?endPage .
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf .
?infoResource core:publisher ?publisherObj .
?publisherObj rdfs:label ?publisher .
?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
?infoResource core:hasPublicationVenue ?publishedIn . ?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal ?publishedIn rdfs:label ?journal .
} WHERE {
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor .
}
WHERE
{
{ {
?subject ?property ?editorship . ?subject ?property ?editorship .
?editorship a core:Editorship ?editorship a core:Editorship
} UNION { }
UNION
{
?subject ?property ?editorship . ?subject ?property ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?infoResource . ?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
} UNION { }
UNION
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource vitro:mostSpecificType ?subclass .
}
UNION
{
?subject ?property ?editorship . ?subject ?property ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?infoResource . ?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName ?infoResource rdfs:label ?infoResourceName
} UNION { }
UNION
{
?subject ?property ?editorship . ?subject ?property ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?infoResource . ?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:hasPublicationVenue ?publishedIn ?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
} UNION { ?partOfObj rdfs:label ?partOf .
}
UNION
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:placeOfPublication ?locale .
}
UNION
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:volume ?volume .
}
UNION
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageStart ?startPage .
}
UNION
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageEnd ?endPage .
}
UNION
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
}
UNION
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn .
}
UNION
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:publisher ?publisherObj .
?publisherObj rdfs:label ?publisher .
}
UNION
{
?subject ?property ?editorship . ?subject ?property ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?infoResource . ?editorship core:relates ?infoResource .
@ -116,121 +214,30 @@
?infoResource core:hasPublicationVenue ?publishedIn . ?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal ?publishedIn rdfs:label ?journal
} }
} UNION
</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 bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:volume ?volume .
?infoResource bibo:pageStart ?startPage .
?infoResource bibo:pageEnd ?endPage .
?infoResource core:placeOfPublication ?locale .
?infoResource bibo:reproducedIn ?appearsInObj .
?infoResource core:publisher ?publisherObj .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?appearsInObj rdfs:label ?appearsIn .
?publisherObj rdfs:label ?publisher .
?editorObj rdfs:label ?editor .
?partOfObj rdfs:label ?partOf
} WHERE {
{ {
?subject ?property ?editorship .
?editorship a core:Editorship
} UNION {
?subject ?property ?editorship . ?subject ?property ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?infoResource . ?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a bibo:Book .
} UNION {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:volume ?volume .
} UNION {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageStart ?startPage .
} UNION {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageEnd ?endPage .
} UNION {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:placeOfPublication ?locale .
} UNION {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn
} UNION {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:publisher ?publisherObj .
?publisherObj rdfs:label ?publisher
} UNION {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:relatedBy ?editorship . ?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?editorObj . ?editorship core:relates ?editorObj .
?editorObj a foaf:Person . ?editorObj a foaf:Person .
?editorObj rdfs:label ?editor ?editorObj rdfs:label ?editor .
} UNION { }
UNION
{
?subject ?property ?editorship . ?subject ?property ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?infoResource . ?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a bibo:BookSection .
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj . ?infoResource core:relatedBy ?editorship .
?partOfObj rdfs:label ?partOf
}
}
</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 bibo: &lt;http://purl.org/ontology/bibo/&gt;
CONSTRUCT {
?subject ?property ?editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
} WHERE {
?subject ?property ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?infoResource . ?editorship core:relates ?editorObj .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?editorObj a foaf:Person .
?infoResource rdfs:label ?infoResourceName . ?editorObj rdfs:label ?editor .
?infoResource core:dateTimeValue ?dateTimeValue . }
?dateTimeValue core:dateTime ?dateTime
} }
</query-construct> </query-construct>

View file

@ -16,34 +16,45 @@
?degreeName ?degreeAbbr ?degreeName ?degreeAbbr
?majorField ?deptOrSchool ?info ?majorField ?deptOrSchool ?info
?dateTimeStart ?dateTimeEnd ?dateTimeStart ?dateTimeEnd
WHERE { WHERE
{
?subject ?property ?edTraining . ?subject ?property ?edTraining .
?edTraining a core:EducationalProcess ?edTraining a core:EducationalProcess
OPTIONAL { ?edTraining vitro:mostSpecificType ?subclass . } OPTIONAL { ?edTraining vitro:mostSpecificType ?subclass . }
OPTIONAL { ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree . OPTIONAL
{
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree . ?awardedDegree core:relates ?degree .
?degree a core:AcademicDegree . ?degree a core:AcademicDegree .
?degree rdfs:label ?degreeName ?degree rdfs:label ?degreeName .
} }
OPTIONAL { ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree . OPTIONAL
{
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree . ?awardedDegree core:relates ?degree .
?degree a core:AcademicDegree . ?degree a core:AcademicDegree .
?degree core:abbreviation ?degreeAbbr ?degree core:abbreviation ?degreeAbbr .
} }
OPTIONAL { ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?org . OPTIONAL
{
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?org .
?org a foaf:Organization . ?org a foaf:Organization .
?org rdfs:label ?orgName ?org rdfs:label ?orgName .
} }
OPTIONAL { ?edTraining core:majorField ?majorField } OPTIONAL { ?edTraining core:majorField ?majorField }
OPTIONAL { ?edTraining core:departmentOrSchool ?deptOrSchool } OPTIONAL { ?edTraining core:departmentOrSchool ?deptOrSchool }
OPTIONAL { ?edTraining core:supplementalInformation ?info } OPTIONAL { ?edTraining core:supplementalInformation ?info }
OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart ?dateTimeStartValue core:dateTime ?dateTimeStart .
} }
OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue . ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd ?dateTimeEndValue core:dateTime ?dateTimeEnd .
} }
} ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart)
</query-select> </query-select>
@ -51,159 +62,138 @@
<query-construct> <query-construct>
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 core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt; PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT { CONSTRUCT
?edTraining vitro:mostSpecificType ?subclass {
} WHERE { ?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining vitro:mostSpecificType ?subclass .
?edTraining core:majorField ?majorField .
?edTraining core:departmentOrSchool ?deptOrSchool .
?edTraining core:supplementalInformation ?info .
?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree .
?degree a core:AcademicDegree .
?degree rdfs:label ?degreeName .
?degree core:abbreviation ?degreeAbbr .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?org .
?org a foaf:Organization .
?org rdfs:label ?orgName .
}
WHERE
{
{
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
}
UNION
{
?subject ?property ?edTraining . ?subject ?property ?edTraining .
?edTraining a core:EducationalProcess . ?edTraining a core:EducationalProcess .
?edTraining vitro:mostSpecificType ?subclass . ?edTraining vitro:mostSpecificType ?subclass .
} }
</query-construct> UNION
{
<query-construct> ?subject ?property ?edTraining .
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt; ?edTraining a core:EducationalProcess .
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; ?edTraining core:majorField ?majorField .
}
CONSTRUCT { UNION
{
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining core:departmentOrSchool ?deptOrSchool .
}
UNION
{
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining core:supplementalInformation ?info .
}
UNION
{
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining core:dateTimeInterval ?dateTimeInterval .
}
UNION
{
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
UNION
{
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
UNION
{
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
}
UNION
{
?subject ?property ?edTraining . ?subject ?property ?edTraining .
?edTraining a core:EducationalProcess . ?edTraining a core:EducationalProcess .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree . ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree . ?awardedDegree core:relates ?degree .
?edTraining core:dateTimeInterval ?dateTimeInterval . }
?edTraining core:majorField ?majorField . UNION
?edTraining core:departmentOrSchool ?deptOrSchool .
?edTraining core:supplementalInformation ?info .
} WHERE {
{ {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess
}
UNION {
?subject ?property ?edTraining . ?subject ?property ?edTraining .
?edTraining a core:EducationalProcess . ?edTraining a core:EducationalProcess .
?edTraining core:majorField ?majorField . ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?org .
?org a foaf:Organization .
} }
UNION { UNION
?subject ?property ?edTraining . {
?edTraining a core:EducationalProcess .
?edTraining core:departmentOrSchool ?deptOrSchool .
}
UNION {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining core:supplementalInformation ?info .
}
UNION {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
}
UNION {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree
}
UNION {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining core:dateTimeInterval ?dateTimeInterval
}
}
</query-construct>
<query-construct>
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT {
?subject ?property ?edTraining . ?subject ?property ?edTraining .
?edTraining a core:EducationalProcess . ?edTraining a core:EducationalProcess .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?org . ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?org .
?org a foaf:Organization . ?org a foaf:Organization .
?org rdfs:label ?orgName . ?org rdfs:label ?orgName .
} WHERE { }
UNION
{ {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess
}
UNION {
?subject ?property ?edTraining . ?subject ?property ?edTraining .
?edTraining a core:EducationalProcess . ?edTraining a core:EducationalProcess .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?org . ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?org a foaf:Organization . ?awardedDegree core:relates ?degree .
}
UNION {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?org .
?org a foaf:Organization .
?org rdfs:label ?orgName
}
}
</query-construct>
<query-construct>
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?degree a core:AcademicDegree . ?degree a core:AcademicDegree .
?degree rdfs:label ?degreeName . ?degree rdfs:label ?degreeName .
?degree core:abbreviation ?degreeAbbr }
} WHERE { UNION
{ {
?subject ?property ?edTraining . ?subject ?property ?edTraining .
?edTraining a core:EducationalProcess . ?edTraining a core:EducationalProcess .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree . ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree . ?awardedDegree core:relates ?degree .
?degree a core:AcademicDegree . ?degree a core:AcademicDegree .
?degree rdfs:label ?degreeName ?degree core:abbreviation ?degreeAbbr .
} UNION {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree .
?degree a core:AcademicDegree .
?degree core:abbreviation ?degreeAbbr
} }
} }
</query-construct> </query-construct>
<query-construct>
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
} WHERE {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
</query-construct>
<query-construct>
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-educationalTraining.ftl</template> <template>propStatement-educationalTraining.ftl</template>
</list-view-config> </list-view-config>

View file

@ -21,27 +21,33 @@
?localName ?localName
?type ?type
?objectType ?objectType
?title WHERE { ?title
WHERE
{
?subject ?property ?object . ?subject ?property ?object .
?object a ?objectType ?object a ?objectType
LET (?localName := afn:localname(?object)) LET (?localName := afn:localname(?object))
OPTIONAL { ?object rdfs:label ?label } OPTIONAL { ?object rdfs:label ?label }
OPTIONAL { OPTIONAL
{
# Get mostSpecificType only for Persons # Get mostSpecificType only for Persons
?object a foaf:Person . ?object a foaf:Person .
?object vitro:mostSpecificType ?typeUri . ?object vitro:mostSpecificType ?typeUri .
?typeUri rdfs:label ?type . ?typeUri rdfs:label ?type .
# Display only a mostSpecificType that belongs to a classgroup. # Display only a mostSpecificType that belongs to a classgroup.
?typeUri vitro:inClassGroup ?classGroup . # CONSTRUCT will apply this filter
?classGroup a vitro:ClassGroup # ?typeUri vitro:inClassGroup ?classGroup .
# ?classGroup a vitro:ClassGroup .
} }
OPTIONAL { ?object obo:ARG_2000028 ?vcard . OPTIONAL
{
?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj . ?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title ?titleObj vcard:title ?title .
} }
<collated> <collated>
@ -55,27 +61,6 @@
} ORDER BY <collated> ?subclass </collated> ASC( ?label ) ASC( ?localName ) ?type } ORDER BY <collated> ?subclass </collated> ASC( ?label ) ASC( ?localName ) ?type
</query-select> </query-select>
<query-construct>
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 ?object .
?object a ?subclass .
?object rdfs:label ?label .
} WHERE {
{
?subject ?property ?object .
} UNION {
?subject ?property ?object .
?object a ?subclass .
} UNION {
?subject ?property ?object .
?object rdfs:label ?label .
}
}
</query-construct>
<query-construct> <query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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;
@ -85,6 +70,8 @@
CONSTRUCT { CONSTRUCT {
?subject ?property ?object . ?subject ?property ?object .
?object a ?subclass .
?object rdfs:label ?label .
?object vitro:mostSpecificType ?typeUri . ?object vitro:mostSpecificType ?typeUri .
?typeUri vitro:inClassGroup ?classGroup . ?typeUri vitro:inClassGroup ?classGroup .
?classGroup a vitro:ClassGroup . ?classGroup a vitro:ClassGroup .
@ -95,17 +82,31 @@
} WHERE { } WHERE {
{ {
?subject ?property ?object . ?subject ?property ?object .
} UNION { }
UNION
{
?subject ?property ?object .
?object a ?subclass .
}
UNION
{
?subject ?property ?object .
?object rdfs:label ?label .
}
UNION
{
?subject ?property ?object . ?subject ?property ?object .
?object vitro:mostSpecificType ?typeUri . ?object vitro:mostSpecificType ?typeUri .
?typeUri rdfs:label ?type . ?typeUri rdfs:label ?type .
?typeUri vitro:inClassGroup ?classGroup . ?typeUri vitro:inClassGroup ?classGroup .
?classGroup a vitro:ClassGroup ?classGroup a vitro:ClassGroup .
} UNION { }
UNION
{
?subject ?property ?object . ?subject ?property ?object .
?object obo:ARG_2000028 ?vcard . ?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj . ?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title ?titleObj vcard:title ?title .
} }
} }
</query-construct> </query-construct>

View file

@ -19,30 +19,30 @@
?dateTimeStart ?dateTimeEnd ?dateTimeStart ?dateTimeEnd
?hideThis ?hideThis
?objectType ?objectType
WHERE { WHERE
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:ClinicalRole . ?role a core:ClinicalRole .
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity . OPTIONAL
{
?role core:relates ?activity .
?activity rdfs:label ?activityLabel ?activity rdfs:label ?activityLabel
<collated> <collated>
?activity vitro:mostSpecificType ?subclass ?activity vitro:mostSpecificType ?subclass
</collated> </collated>
} }
OPTIONAL { ?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName
<collated>
?activity vitro:mostSpecificType ?subclass
</collated>
}
OPTIONAL { ?role rdfs:label ?roleLabel } OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart ?dateTimeStartValue core:dateTime ?dateTimeStart
} }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue . ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd ?dateTimeEndValue core:dateTime ?dateTimeEnd
} }
@ -54,103 +54,88 @@
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; PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT { CONSTRUCT
{
?subject ?property ?role . ?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 a core:ClinicalRole .
?role rdfs:label ?roleLabel . ?role rdfs:label ?roleLabel .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
?role core:relates ?activity .
?activity vitro:mostSpecificType ?subclass .
?activity rdfs:label ?activityName ?activity rdfs:label ?activityName
} WHERE { }
WHERE
{
{ {
?subject ?property ?role . ?subject ?property ?role .
?role a core:ClinicalRole . ?role a core:ClinicalRole .
} UNION { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:ClinicalRole . ?role a core:ClinicalRole .
?role rdfs:label ?roleLabel ?role rdfs:label ?roleLabel .
} UNION { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:ClinicalRole . ?role a core:ClinicalRole .
?role core:relates ?activity . ?role core:dateTimeInterval ?dateTimeInterval .
?activity rdfs:label ?activityName ?dateTimeInterval core:start ?dateTimeStartValue .
} UNION { ?dateTimeStartValue core:dateTime ?dateTimeStart .
}
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:ClinicalRole . ?role a core:ClinicalRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity . ?role core:dateTimeInterval ?dateTimeInterval .
?activity rdfs:label ?activityName ?dateTimeInterval core:end ?dateTimeEndValue .
} UNION { ?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:ClinicalRole . ?role a core:ClinicalRole .
?role core:roleContributesTo ?activity . ?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName ?activity vitro:mostSpecificType ?subclass .
} }
UNION
{
?subject ?property ?role .
?role a core:ClinicalRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass .
} }
</query-construct> UNION
{
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role . ?subject ?property ?role .
?role a core:ClinicalRole . ?role a core:ClinicalRole .
?role core:dateTimeInterval ?dateTimeInterval . ?role core:relates ?activity .
?dateTimeInterval core:start ?dateTimeStartValue . ?activity rdfs:label ?activityName .
?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> UNION
{
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role . ?subject ?property ?role .
?role a core:ClinicalRole . ?role a core:ClinicalRole .
?role core:dateTimeInterval ?dateTimeInterval . ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?dateTimeInterval core:end ?dateTimeEndValue . ?activity rdfs:label ?activityName .
?dateTimeEndValue core:dateTime ?dateTimeEnd }
} WHERE { UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:ClinicalRole . ?role a core:ClinicalRole .
?role core:dateTimeInterval ?dateTimeInterval . ?role core:roleContributesTo ?activity .
?dateTimeInterval core:end ?dateTimeEndValue . ?activity rdfs:label ?activityName .
?dateTimeEndValue core:dateTime ?dateTimeEnd }
} }
</query-construct> </query-construct>

View file

@ -22,42 +22,55 @@
?dateTimeStartGrant ?dateTimeEndGrant ?dateTimeStartGrant ?dateTimeEndGrant
?hideThis ?hideThis
WHERE { WHERE {
?subject ?property ?role . ?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole . ?role a core:CoPrincipalInvestigatorRole .
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity rdfs:label ?activityLabel . ?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity)) LET (?activityName := afn:localname(?activity)) .
} }
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:assignedBy ?awardedBy . ?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel ?awardedBy rdfs:label ?awardedByLabel .
} }
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:relates ?adminedByRole . ?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy . ?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel ?adminedBy rdfs:label ?adminedByLabel .
} }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole . OPTIONAL
{
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole . ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole .
} }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole . OPTIONAL
{
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole . ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole .
} }
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
} }
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
} }
OPTIONAL { ?role core:hideFromDisplay ?hideThis } OPTIONAL { ?role core:hideFromDisplay ?hideThis }
} ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName } ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
@ -67,40 +80,136 @@
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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 foaf: &lt;http://xmlns.com/foaf/0.1/&gt; PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT { CONSTRUCT
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole . ?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role core:relatedBy ?activity .
?role core:hideFromDisplay ?hideThis . ?role core:hideFromDisplay ?hideThis .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole .
?activity a core:Grant .
?activity rdfs:label ?activityLabel . ?activity rdfs:label ?activityLabel .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
?activity core:assignedBy ?awardedBy . ?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel . ?awardedBy rdfs:label ?awardedByLabel .
?activity core:relates ?adminedByRole . ?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy . ?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel ?adminedBy rdfs:label ?adminedByLabel .
} WHERE { }
WHERE
{
{ {
?subject ?property ?role . ?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole . ?role a core:CoPrincipalInvestigatorRole .
} UNION { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole . ?role a core:CoPrincipalInvestigatorRole .
?role core:hideFromDisplay ?hideThis . ?role core:hideFromDisplay ?hideThis .
} UNION { }
UNION
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole .
}
UNION
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole .
}
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole . ?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity rdfs:label ?activityLabel .
}
UNION
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:elatedBy ?activity .
?activity a core:Contract .
?activity rdfs:label ?activityLabel ?activity rdfs:label ?activityLabel
} UNION { }
UNION
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
}
UNION
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Contract .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
}
UNION
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
UNION
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Contract .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole . ?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:assignedBy ?awardedBy . ?activity core:assignedBy ?awardedBy .
?awardedBy a foaf:Organization . ?awardedBy a foaf:Organization .
?awardedBy rdfs:label ?awardedByLabel ?awardedBy rdfs:label ?awardedByLabel .
} UNION { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole . ?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
@ -109,108 +218,7 @@
?adminedByRole a core:AdminsitratorRole. ?adminedByRole a core:AdminsitratorRole.
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy . ?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy a foaf:Organization . ?adminedBy a foaf:Organization .
?adminedBy rdfs:label ?adminedByLabel ?adminedBy rdfs:label ?adminedByLabel .
} UNION {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Contract .
?activity rdfs:label ?activityLabel
}
}
</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
} UNION {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Contract .
?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
} UNION {
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Contract .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
} }
} }
</query-construct> </query-construct>

View file

@ -22,40 +22,53 @@
?dateTimeStartGrant ?dateTimeEndGrant ?dateTimeStartGrant ?dateTimeEndGrant
?hideThis ?hideThis
WHERE { WHERE {
?subject ?property ?role . ?subject ?property ?role .
?role a core:InvestigatorRole . ?role a core:InvestigatorRole .
?role vitro:mostSpecificType ?subclass ?role vitro:mostSpecificType ?subclass
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity rdfs:label ?activityLabel . ?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity)) LET (?activityName := afn:localname(?activity))
} }
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:assignedBy ?awardedBy . ?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel ?awardedBy rdfs:label ?awardedByLabel
} }
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:relates ?adminedByRole . ?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy . ?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel ?adminedBy rdfs:label ?adminedByLabel
} }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole . OPTIONAL
{
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole . ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
} }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole . OPTIONAL
{
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole . ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
} }
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
} }
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
@ -72,152 +85,150 @@
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt; PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT { CONSTRUCT {
?subject ?property ?role . ?subject ?property ?role .
?role a core:InvestigatorRole . ?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?role vitro:mostSpecificType ?subclass . ?role vitro:mostSpecificType ?subclass .
?role core:hideFromDisplay ?hideThis . ?role core:hideFromDisplay ?hideThis .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole .
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity rdfs:label ?activityLabel . ?activity rdfs:label ?activityLabel .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
?activity core:assignedBy ?awardedBy . ?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel . ?awardedBy rdfs:label ?awardedByLabel .
?activity core:relates ?adminedByRole . ?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy . ?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel ?adminedBy rdfs:label ?adminedByLabel .
} WHERE { }
WHERE
{
{ {
?subject ?property ?role . ?subject ?property ?role .
?role a core:InvestigatorRole . ?role a core:InvestigatorRole .
} UNION { }
?subject ?property ?role . UNION
?role a core:InvestigatorRole . {
?role core:hideFromDisplay ?hideThis .
} UNION {
?subject ?property ?role . ?subject ?property ?role .
?role a core:InvestigatorRole . ?role a core:InvestigatorRole .
?role vitro:mostSpecificType ?subclass . ?role vitro:mostSpecificType ?subclass .
} UNION { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:InvestigatorRole . ?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role core:hideFromDisplay ?hideThis .
}
UNION
{
?subject ?property ?role .
?role a core:InvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole .
}
UNION
{
?subject ?property ?role .
?role a core:InvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole .
}
UNION
{
?subject ?property ?role .
?role a core:InvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity rdfs:label ?activityLabel ?activity rdfs:label ?activityLabel .
} UNION { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:InvestigatorRole . ?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role core:relatedBy ?activity .
?activity a core:Contract .
?activity rdfs:label ?activityLabel .
}
UNION
{
?subject ?property ?role .
?role a core:InvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
}
UNION
{
?subject ?property ?role .
?role a core:InvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Contract .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
}
UNION
{
?subject ?property ?role .
?role a core:InvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
UNION
{
?subject ?property ?role .
?role a core:InvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Contract .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
UNION
{
?subject ?property ?role .
?role a core:InvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:assignedBy ?awardedBy . ?activity core:assignedBy ?awardedBy .
?awardedBy a foaf:Organization . ?awardedBy a foaf:Organization .
?awardedBy rdfs:label ?awardedByLabel ?awardedBy rdfs:label ?awardedByLabel .
} UNION { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:InvestigatorRole . ?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role core:relatedBy ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:relates ?adminedByRole . ?activity core:relates ?adminedByRole .
?adminedByRole a core:AdminsitratorRole. ?adminedByRole a core:AdminsitratorRole.
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy . ?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy a foaf:Organization . ?adminedBy a foaf:Organization .
?adminedBy rdfs:label ?adminedByLabel ?adminedBy rdfs:label ?adminedByLabel .
} UNION {
?subject ?property ?role .
?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Contract .
?activity rdfs:label ?activityLabel
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:InvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
} WHERE {
?subject ?property ?role .
?role a core:InvestigatorRole .
?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:InvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
} WHERE {
?subject ?property ?role .
?role a core:InvestigatorRole .
?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: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 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
} UNION {
?subject ?property ?role .
?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Contract .
?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:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
} WHERE {
{
?subject ?property ?role .
?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
} UNION {
?subject ?property ?role .
?role a core:InvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Contract .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
} }
} }
</query-construct> </query-construct>

View file

@ -21,43 +21,58 @@
?dateTimeStartRole ?dateTimeEndRole ?dateTimeStartRole ?dateTimeEndRole
?dateTimeStartGrant ?dateTimeEndGrant ?dateTimeStartGrant ?dateTimeEndGrant
?hideThis ?hideThis
WHERE {
WHERE
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:PrincipalInvestigatorRole . ?role a core:PrincipalInvestigatorRole .
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role core:relatedBy ?activity .
?activity rdfs:label ?activityLabel . ?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity)) LET (?activityName := afn:localname(?activity)) .
} }
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role core:relatedBy ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:assignedBy ?awardedBy . ?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel ?awardedBy rdfs:label ?awardedByLabel .
} }
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role core:relatedBy ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:relates ?adminedByRole . ?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy . ?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel ?adminedBy rdfs:label ?adminedByLabel .
} }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole . OPTIONAL
{
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole . ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole .
} }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole . OPTIONAL
{
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole . ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole .
} }
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role core:relatedBy ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
} }
OPTIONAL { ?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . OPTIONAL
{
?role core:relatedBy ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
} }
OPTIONAL { ?role core:hideFromDisplay ?hideThis } OPTIONAL { ?role core:hideFromDisplay ?hideThis }
} ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName } ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
@ -73,150 +88,136 @@
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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 foaf: &lt;http://xmlns.com/foaf/0.1/&gt; PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT {
CONSTRUCT
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:PrincipalInvestigatorRole . ?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?role core:hideFromDisplay ?hideThis . ?role core:hideFromDisplay ?hideThis .
?role core:relatedBy ?activity .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole .
?activity rdfs:label ?activityLabel . ?activity rdfs:label ?activityLabel .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?activity core:assignedBy ?awardedBy . ?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel . ?awardedBy rdfs:label ?awardedByLabel .
?activity core:relates ?adminedByRole . ?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy . ?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel ?adminedBy rdfs:label ?adminedByLabel .
} WHERE { ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
WHERE
{
{ {
?subject ?property ?role . ?subject ?property ?role .
?role a core:PrincipalInvestigatorRole . ?role a core:PrincipalInvestigatorRole .
} UNION { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:PrincipalInvestigatorRole . ?role a core:PrincipalInvestigatorRole .
?role core:hideFromDisplay ?hideThis . ?role core:hideFromDisplay ?hideThis .
} UNION { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:PrincipalInvestigatorRole . ?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role core:relatedBy ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity rdfs:label ?activityLabel ?activity rdfs:label ?activityLabel .
} UNION { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:PrincipalInvestigatorRole . ?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role core:relatedBy ?activity .
?activity a core:Contract .
?activity rdfs:label ?activityLabel .
}
UNION
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:assignedBy ?awardedBy . ?activity core:assignedBy ?awardedBy .
?awardedBy a foaf:Organization . ?awardedBy a foaf:Organization .
?awardedBy rdfs:label ?awardedByLabel ?awardedBy rdfs:label ?awardedByLabel .
} UNION { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:PrincipalInvestigatorRole . ?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role core:relatedBy ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:relates ?adminedByRole . ?activity core:relates ?adminedByRole .
?adminedByRole a core:AdminsitratorRole. ?adminedByRole a core:AdminsitratorRole.
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy . ?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy a foaf:Organization . ?adminedBy a foaf:Organization .
?adminedBy rdfs:label ?adminedByLabel ?adminedBy rdfs:label ?adminedByLabel .
} UNION {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Contract .
?activity rdfs:label ?activityLabel
} }
} UNION
</query-construct> {
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role . ?subject ?property ?role .
?role a core:PrincipalInvestigatorRole . ?role a core:PrincipalInvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole . ?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole . ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole ?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> UNION
{
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role . ?subject ?property ?role .
?role a core:PrincipalInvestigatorRole . ?role a core:PrincipalInvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole . ?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole . ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole ?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> UNION
<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 . ?subject ?property ?role .
?role a core:PrincipalInvestigatorRole . ?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role core:relatedBy ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
} UNION {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Contract .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
} }
} UNION
</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 . ?subject ?property ?role .
?role a core:PrincipalInvestigatorRole . ?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role core:relatedBy ?activity .
?activity a core:Contract .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
}
UNION
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Grant . ?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
} UNION { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:PrincipalInvestigatorRole . ?role a core:PrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity . ?role core:relatedBy ?activity .
?activity a core:Contract . ?activity a core:Contract .
?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
} }
} }
</query-construct> </query-construct>

View file

@ -20,12 +20,12 @@
OPTIONAL { ?authorship core:rank ?rank } OPTIONAL { ?authorship core:rank ?rank }
OPTIONAL { ?authorship core:relates ?author . OPTIONAL { ?authorship core:relates ?author .
?author a foaf:Agent . ?author a foaf:Agent .
?author rdfs:label ?authorName ?author rdfs:label ?authorName .
OPTIONAL { ?authorship core:relates ?author . OPTIONAL { ?authorship core:relates ?author .
?author a foaf:Agent . ?author a foaf:Agent .
?author vitro:mostSpecificType ?subclass . ?author vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Agent ?subclass rdfs:subClassOf foaf:Agent .
} }
} }
OPTIONAL { ?authorship core:relates ?author . OPTIONAL { ?authorship core:relates ?author .
@ -42,7 +42,7 @@
OPTIONAL { ?authorship core:relates ?author . OPTIONAL { ?authorship core:relates ?author .
?author a vcard:Kind . ?author a vcard:Kind .
?author vitro:mostSpecificType ?subclass . ?author vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf vcard:Kind ?subclass rdfs:subClassOf vcard:Kind .
} }
} }
<critical-data-required> <critical-data-required>
@ -54,59 +54,30 @@
<query-construct> <query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt; PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT {
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:rank ?rank .
?authorship core:relates ?author .
?author a foaf:Agent .
?author rdfs:label ?authorName .
?author vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Agent
} WHERE {
{
?subject ?property ?authorship .
?authorship a core:Authorship
} UNION {
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:rank ?rank .
} UNION {
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?author .
?author a foaf:Agent .
?author rdfs:label ?authorName
} UNION {
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?author .
?author a foaf:Agent .
?author rdfs:label ?authorName .
?author 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; PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt; PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT { CONSTRUCT {
?subject ?property ?authorship . ?subject ?property ?authorship .
?authorship a core:Authorship . ?authorship a core:Authorship .
?authorship core:rank ?rank . ?authorship core:rank ?rank .
?authorship core:relates ?author .
?author a vcard:Kind . ?authorship core:relates ?authorAgent .
?author vcard:hasName ?vName . ?authorAgent a foaf:Agent .
?authorAgent rdfs:label ?authorName .
?authorAgent vitro:mostSpecificType ?authorAgentMST .
?authorAgentMST rdfs:subClassOf foaf:Agent .
?authorship core:relates ?authorVCard .
?authorVCard a vcard:Kind .
?authorVCard vitro:mostSpecificType ?authorVCardMST .
?authorVCardMST rdfs:subClassOf vcard:Kind .
?authorVCard vcard:hasName ?vName .
?vName vcard:familyName ?lastName . ?vName vcard:familyName ?lastName .
?vName vcard:givenName ?firstName . ?vName vcard:givenName ?firstName .
?vName core:middleName ?middleName . ?vName core:middleName ?middleName .
?author vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf vcard:Kind
} WHERE { } WHERE {
{ {
?subject ?property ?authorship . ?subject ?property ?authorship .
@ -118,33 +89,42 @@
} UNION { } UNION {
?subject ?property ?authorship . ?subject ?property ?authorship .
?authorship a core:Authorship . ?authorship a core:Authorship .
?authorship core:relates ?author . ?authorship core:relates ?authorAgent .
?author a vcard:Kind . ?authorAgent a foaf:Agent .
?author vcard:hasName ?vName . ?authorAgent vitro:mostSpecificType ?authorAgentMST .
} UNION {
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?authorAgent .
?authorAgent a foaf:Agent .
?authorAgent rdfs:label ?authorName
} UNION {
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?authorVCard .
?authorVCard a vcard:Kind .
?authorVCard vitro:mostSpecificType ?authorVCardMST .
} UNION {
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?authorVCard .
?authorVCard a vcard:Kind .
?authorVCard vcard:hasName ?vName .
?vName vcard:familyName ?lastName . ?vName vcard:familyName ?lastName .
} UNION { } UNION {
?subject ?property ?authorship . ?subject ?property ?authorship .
?authorship a core:Authorship . ?authorship a core:Authorship .
?authorship core:relates ?author . ?authorship core:relates ?authorVCard .
?author a vcard:Kind . ?authorVCard a vcard:Kind .
?author vcard:hasName ?vName . ?authorVCard vcard:hasName ?vName .
?vName vcard:familyName ?lastName .
?vName vcard:givenName ?firstName . ?vName vcard:givenName ?firstName .
} UNION { } UNION {
?subject ?property ?authorship . ?subject ?property ?authorship .
?authorship a core:Authorship . ?authorship a core:Authorship .
?authorship core:relates ?author . ?authorship core:relates ?authorVCard .
?author a vcard:Kind . ?authorVCard a vcard:Kind .
?author vcard:hasName ?vName . ?author vcard:hasName ?vName .
?vName vcard:familyName ?lastName .
?vName vcard:givenName ?firstName .
?vName core:middleName ?middleName . ?vName core:middleName ?middleName .
} UNION {
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?author .
?author a vcard:Kind .
?author vitro:mostSpecificType ?subclass .
} }
} }
</query-construct> </query-construct>

View file

@ -17,30 +17,41 @@
?person ?personName ?person ?personName
?dateTimeStart ?dateTimeEnd ?dateTimeStart ?dateTimeEnd
?hideThis ?hideThis
WHERE { WHERE
{
?subject ?property ?position ?subject ?property ?position
OPTIONAL { ?position core:relates ?person . OPTIONAL
{
?position core:relates ?person .
?person a foaf:Person . ?person a foaf:Person .
?person rdfs:label ?personName ?person rdfs:label ?personName .
} }
<collated> <collated>
OPTIONAL { ?position vitro:mostSpecificType ?subclass . OPTIONAL
OPTIONAL { ?subclass vitro:displayRankAnnot ?displayRank . } {
?position vitro:mostSpecificType ?subclass .
OPTIONAL
{
?subclass vitro:displayRankAnnot ?displayRank .
}
} }
</collated> </collated>
OPTIONAL { ?position rdfs:label ?positionTitle } OPTIONAL { ?position rdfs:label ?positionTitle }
OPTIONAL { ?position core:hideFromDisplay ?hideThis } OPTIONAL { ?position core:hideFromDisplay ?hideThis }
OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart ?dateTimeStartValue core:dateTime ?dateTimeStart
} }
OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue . ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd ?dateTimeEndValue core:dateTime ?dateTimeEnd
} }
# Get current positions only: end date is either null or not in the past # Get current positions only: end date is either null or not in the past
FILTER ( !bound(?dateTimeEnd) || FILTER ( !bound(?dateTimeEnd) || substr(str(?dateTimeEnd), 1, 4) &gt;= substr(str(now()), 1, 4) )
substr(str(?dateTimeEnd), 1, 4) &gt;= substr(str(now()), 1, 4) )
<critical-data-required> <critical-data-required>
FILTER ( bound(?person) ) FILTER ( bound(?person) )
</critical-data-required> </critical-data-required>
@ -48,95 +59,91 @@
} ORDER BY <collated> ?subclass </collated> (fn:lower-case(?personName)) } ORDER BY <collated> ?subclass </collated> (fn:lower-case(?personName))
</query-select> </query-select>
<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;
CONSTRUCT {
?subject ?property ?position .
?position a core:Position .
?position vitro:mostSpecificType ?subclass .
?subclass vitro:displayRankAnnot ?displayRank
} WHERE {
{
?subject ?property ?position .
?position a core:Position .
?position vitro:mostSpecificType ?subclass
} UNION {
?subject ?property ?position .
?position a core:Position .
?position vitro:mostSpecificType ?subclass .
?subclass vitro:displayRankAnnot ?displayRank
}
}
</query-construct>
<query-construct> <query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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 foaf: &lt;http://xmlns.com/foaf/0.1/&gt; PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT { PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT
{
?subject ?property ?position . ?subject ?property ?position .
?position a core:Position . ?position a core:Position .
?position core:hideFromDisplay ?hideThis .
?position rdfs:label ?positionTitle . ?position rdfs:label ?positionTitle .
?position core:hideFromDisplay ?hideThis .
?position vitro:mostSpecificType ?subclass .
?subclass vitro:displayRankAnnot ?displayRank .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
?position core:relates ?person . ?position core:relates ?person .
?person a foaf:Person . ?person a foaf:Person .
?person rdfs:label ?personName ?person rdfs:label ?personName .
} WHERE { }
WHERE
{
{ {
?subject ?property ?position . ?subject ?property ?position .
?position a core:Position . ?position a core:Position .
} UNION { }
UNION
{
?subject ?property ?position . ?subject ?property ?position .
?position a core:Position . ?position a core:Position .
?position core:hideFromDisplay ?hideThis ?position core:hideFromDisplay ?hideThis .
} UNION { }
UNION
{
?subject ?property ?position . ?subject ?property ?position .
?position a core:Position . ?position a core:Position .
?position rdfs:label ?positionTitle ?position vitro:mostSpecificType ?subclass .
} UNION { }
UNION
{
?subject ?property ?position .
?position a core:Position .
?position vitro:mostSpecificType ?subclass .
?subclass vitro:displayRankAnnot ?displayRank .
}
UNION
{
?subject ?property ?position .
?position a core:Position .
?position rdfs:label ?positionTitle .
}
UNION
{
?subject ?property ?position .
?position a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
UNION
{
?subject ?property ?position .
?position a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
UNION
{
?subject ?property ?position . ?subject ?property ?position .
?position core:relates ?person . ?position core:relates ?person .
?person a foaf:Person . ?person a foaf:Person .
?person rdfs:label ?personName ?person rdfs:label ?personName .
} }
} }
</query-construct> </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:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?position .
?position a core: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 a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?position .
?position a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-organizationForPosition.ftl</template> <template>propStatement-organizationForPosition.ftl</template>
</list-view-config> </list-view-config>

View file

@ -19,36 +19,59 @@
?middleOrg ?middleOrgName ?middleOrg ?middleOrgName
?outerOrg ?outerOrgName ?outerOrg ?outerOrgName
?dateTimeStart ?dateTimeEnd ?dateTimeStart ?dateTimeEnd
WHERE { WHERE
{
?subject ?property ?position . ?subject ?property ?position .
OPTIONAL { ?position core:relates ?org . OPTIONAL
?org rdfs:label ?orgName {
?position core:relates ?org .
?org rdfs:label ?orgName .
} }
OPTIONAL { ?position core:relates ?org . OPTIONAL
{
?position core:relates ?org .
?org rdfs:label ?orgName . ?org rdfs:label ?orgName .
?org obo:BFO_0000050 ?middleOrg . ?org obo:BFO_0000050 ?middleOrg .
?middleOrg rdfs:label ?middleOrgName ?middleOrg rdfs:label ?middleOrgName .
} }
OPTIONAL { ?position core:relates ?org . OPTIONAL
{
?position core:relates ?org .
?org rdfs:label ?orgName . ?org rdfs:label ?orgName .
?org obo:BFO_0000050 ?middleOrg . ?org obo:BFO_0000050 ?middleOrg .
?middleOrg obo:BFO_0000050 ?outerOrg . ?middleOrg obo:BFO_0000050 ?outerOrg .
?outerOrg rdfs:label ?outerOrgName ?outerOrg rdfs:label ?outerOrgName .
} }
OPTIONAL { ?position rdfs:label ?positionTitle } OPTIONAL
OPTIONAL { ?position core:hrJobTitle ?hrJobTitle } {
OPTIONAL { ?position core:rank ?rank } ?position rdfs:label ?positionTitle .
OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval . }
OPTIONAL
{
?position core:hrJobTitle ?hrJobTitle .
}
OPTIONAL
{
?position core:rank ?rank .
}
OPTIONAL
{
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart ?dateTimeStartValue core:dateTime ?dateTimeStart .
} }
OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue . ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd ?dateTimeEndValue core:dateTime ?dateTimeEnd .
} }
<collated> <collated>
OPTIONAL { ?position vitro:mostSpecificType ?subclass . OPTIONAL
?subclass rdfs:subClassOf core:Position {
?position vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:Position .
} }
</collated> </collated>
<critical-data-required> <critical-data-required>
@ -60,103 +83,105 @@
<query-construct> <query-construct>
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 core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?position .
?position vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:Position
} WHERE {
?subject ?property ?position .
?position a core:Position .
?position vitro:mostSpecificType ?subclass .
?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;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt; PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt; PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
CONSTRUCT { PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT
{
?subject ?property ?position . ?subject ?property ?position .
?position rdfs:label ?positionTitle . ?position rdfs:label ?positionTitle .
?position vitro:mostSpecificType ?subclass .
?position core:hrJobTitle ?hrJobTitle . ?position core:hrJobTitle ?hrJobTitle .
?position core:rank ?rank . ?subclass rdfs:subClassOf core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
?position core:relates ?org . ?position core:relates ?org .
?org rdfs:label ?orgName . ?org rdfs:label ?orgName .
?org obo:BFO_0000050 ?middleOrg . ?org obo:BFO_0000050 ?middleOrg .
?middleOrg rdfs:label ?middleOrgName . ?middleOrg rdfs:label ?middleOrgName .
?middleOrg obo:BFO_0000050 ?outerOrg . ?middleOrg obo:BFO_0000050 ?outerOrg .
?outerOrg rdfs:label ?outerOrgName . ?outerOrg rdfs:label ?outerOrgName .
} WHERE { }
WHERE
{
{ {
?subject ?property ?position . ?subject ?property ?position .
?position a core:Position . ?position a core:Position .
} UNION { }
UNION
{
?subject ?property ?position . ?subject ?property ?position .
?position a core:Position . ?position a core:Position .
?position rdfs:label ?positionTitle . ?position rdfs:label ?positionTitle .
} UNION { }
UNION
{
?subject ?property ?position . ?subject ?property ?position .
?position a core:Position . ?position a core:Position .
?position core:rank ?rank ?position core:rank ?rank .
} UNION { }
UNION
{
?subject ?property ?position .
?position a core:Position .
?position core:hrJobTitle ?hrJobTitle .
}
UNION
{
?subject ?property ?position .
?position a core:Position .
?position vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:Position .
}
UNION
{
?subject ?property ?position .
?position a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
UNION
{
?subject ?property ?position .
?position a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
UNION
{
?subject ?property ?position . ?subject ?property ?position .
?position a core:Position . ?position a core:Position .
?position core:relates ?org . ?position core:relates ?org .
?org a foaf:Organization . ?org a foaf:Organization .
?org rdfs:label ?orgName ?org rdfs:label ?orgName .
} UNION { }
UNION
{
?subject ?property ?position . ?subject ?property ?position .
?position a core:Position . ?position a core:Position .
?position core:relates ?org . ?position core:relates ?org .
?org a foaf:Organization . ?org a foaf:Organization .
?org obo:BFO_0000050 ?middleOrg . ?org obo:BFO_0000050 ?middleOrg .
?middleOrg rdfs:label ?middleOrgName ?middleOrg rdfs:label ?middleOrgName .
} UNION { }
UNION
{
?subject ?property ?position . ?subject ?property ?position .
?position a core:Position . ?position a core:Position .
?position core:relates ?org . ?position core:relates ?org .
?org a foaf:Organization . ?org a foaf:Organization .
?org obo:BFO_0000050 ?middleOrg . ?org obo:BFO_0000050 ?middleOrg .
?middleOrg obo:BFO_0000050 ?outerOrg . ?middleOrg obo:BFO_0000050 ?outerOrg .
?outerOrg rdfs:label ?outerOrgName ?outerOrg rdfs:label ?outerOrgName .
} }
} }
</query-construct> </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 a core: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 a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-personInPosition.ftl</template> <template>propStatement-personInPosition.ftl</template>
</list-view-config> </list-view-config>

View file

@ -18,7 +18,8 @@
?startPage ?startPage
?endPage ?endPage
?locale ?locale
WHERE { WHERE
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName . ?infoResource rdfs:label ?infoResourceName .
@ -28,7 +29,9 @@
OPTIONAL { ?infoResource bibo:pageEnd ?endPage } OPTIONAL { ?infoResource bibo:pageEnd ?endPage }
OPTIONAL { ?infoResource core:placeOfPublication ?locale } OPTIONAL { ?infoResource core:placeOfPublication ?locale }
OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass } OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass }
OPTIONAL { ?infoResource core:dateTimeValue ?dateTimeValue . OPTIONAL
{
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime ?dateTimeValue core:dateTime ?dateTime
} }
@ -38,81 +41,79 @@
} ORDER BY ?subclass DESC(?dateTime) ?infoResourceName } ORDER BY ?subclass DESC(?dateTime) ?infoResourceName
</query-select> </query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource vitro:mostSpecificType ?subclass
} WHERE {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource 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 bibo: &lt;http://purl.org/ontology/bibo/&gt;
CONSTRUCT {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
} WHERE {
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt;
} UNION {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName
} }
</query-construct>
<query-construct> <query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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 bibo: &lt;http://purl.org/ontology/bibo/&gt; PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt; PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT { PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource vitro:mostSpecificType ?subclass .
?infoResource rdfs:label ?infoResourceName .
?infoResource bibo:volume ?volume . ?infoResource bibo:volume ?volume .
?infoResource bibo:pageStart ?startPage . ?infoResource bibo:pageStart ?startPage .
?infoResource bibo:pageEnd ?endPage . ?infoResource bibo:pageEnd ?endPage .
?infoResource core:placeOfPublication ?locale . ?infoResource core:placeOfPublication ?locale .
?infoResource bibo:reproducedIn ?appearsInObj . ?infoResource core:dateTimeValue ?dateTimeValue .
?infoResource core:publisher ?publisherObj . ?dateTimeValue core:dateTime ?dateTime .
?infoResource core:relatedBy ?editorship . ?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?editorObj . ?editorship core:relates ?editorObj .
?editorObj a foaf:Person . ?editorObj a foaf:Person .
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?editorObj rdfs:label ?editor . ?editorObj rdfs:label ?editor .
} WHERE { }
WHERE
{
{ {
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
} UNION { ?infoResource vitro:mostSpecificType ?subclass .
}
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
}
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:volume ?volume . ?infoResource bibo:volume ?volume .
} UNION { }
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageStart ?startPage . ?infoResource bibo:pageStart ?startPage .
} UNION { }
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageEnd ?endPage . ?infoResource bibo:pageEnd ?endPage .
} UNION { }
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:placeOfPublication ?locale . ?infoResource core:placeOfPublication ?locale .
} UNION { }
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
}
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a bibo:Book . ?infoResource a bibo:Book .
?infoResource core:relatedBy ?editorship . ?infoResource core:relatedBy ?editorship .
@ -120,7 +121,9 @@
?editorship core:relates ?editorObj . ?editorship core:relates ?editorObj .
?editorObj a foaf:Person . ?editorObj a foaf:Person .
?editorObj rdfs:label ?editor ?editorObj rdfs:label ?editor
} UNION { }
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a bibo:BookSection . ?infoResource a bibo:BookSection .
?infoResource core:relatedBy ?editorship . ?infoResource core:relatedBy ?editorship .
@ -132,24 +135,5 @@
} }
</query-construct> </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 bibo: &lt;http://purl.org/ontology/bibo/&gt;
CONSTRUCT {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
} WHERE {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
}
</query-construct>
<template>propStatement-publicationVenueFor.ftl</template> <template>propStatement-publicationVenueFor.ftl</template>
</list-view-config> </list-view-config>

View file

@ -21,27 +21,36 @@
?locale ?locale
?appearsIn ?appearsIn
?partOf ?partOf
WHERE { WHERE
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName . ?infoResource rdfs:label ?infoResourceName .
OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass }
OPTIONAL { ?infoResource bibo:volume ?volume } OPTIONAL { ?infoResource bibo:volume ?volume }
OPTIONAL { ?infoResource bibo:pageStart ?startPage } OPTIONAL { ?infoResource bibo:pageStart ?startPage }
OPTIONAL { ?infoResource bibo:pageEnd ?endPage } OPTIONAL { ?infoResource bibo:pageEnd ?endPage }
OPTIONAL { ?infoResource core:placeOfPublication ?locale } OPTIONAL { ?infoResource core:placeOfPublication ?locale }
OPTIONAL { ?infoResource bibo:reproducedIn ?appearsInObj . OPTIONAL
?appearsInObj rdfs:label ?appearsIn {
?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn .
} }
OPTIONAL { ?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj . OPTIONAL
?partOfObj rdfs:label ?partOf {
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf .
} }
OPTIONAL { ?infoResource core:hasPublicationVenue ?publishedIn . OPTIONAL
?publishedIn rdfs:label ?journal {
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal .
} }
OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass } OPTIONAL
OPTIONAL { ?infoResource core:dateTimeValue ?dateTimeValue . {
?dateTimeValue core:dateTime ?dateTime ?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
} }
<critical-data-required> <critical-data-required>
@ -50,144 +59,140 @@
} ORDER BY ?subclass DESC(?dateTime) ?infoResourceName } ORDER BY ?subclass DESC(?dateTime) ?infoResourceName
</query-select> </query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource vitro:mostSpecificType ?subclass
} WHERE {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource 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 bibo: &lt;http://purl.org/ontology/bibo/&gt;
CONSTRUCT {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal
} WHERE {
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt;
} UNION {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName
} UNION {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:hasPublicationVenue ?publishedIn
} UNION {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal
}
}
</query-construct>
<query-construct> <query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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 bibo: &lt;http://purl.org/ontology/bibo/&gt; PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt; PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT { PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource vitro:mostSpecificType ?subclass .
?infoResource rdfs:label ?infoResourceName . ?infoResource rdfs:label ?infoResourceName .
?infoResource bibo:volume ?volume . ?infoResource bibo:volume ?volume .
?infoResource bibo:pageStart ?startPage . ?infoResource bibo:pageStart ?startPage .
?infoResource bibo:pageEnd ?endPage . ?infoResource bibo:pageEnd ?endPage .
?infoResource core:placeOfPublication ?locale . ?infoResource core:placeOfPublication ?locale .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal .
?infoResource bibo:reproducedIn ?appearsInObj . ?infoResource bibo:reproducedIn ?appearsInObj .
?infoResource core:publisher ?publisherObj . ?appearsInObj rdfs:label ?appearsIn .
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf .
?infoResource core:relatedBy ?editorship . ?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?editorObj . ?editorship core:relates ?editorObj .
?editorObj a foaf:Person . ?editorObj a foaf:Person .
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?appearsInObj rdfs:label ?appearsIn .
?editorObj rdfs:label ?editor . ?editorObj rdfs:label ?editor .
?partOfObj rdfs:label ?partOf }
} WHERE { WHERE
{
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
}
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource vitro:mostSpecificType ?subclass .
}
UNION
{ {
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName . ?infoResource rdfs:label ?infoResourceName .
} UNION { }
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:volume ?volume . ?infoResource bibo:volume ?volume .
} UNION { }
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageStart ?startPage . ?infoResource bibo:pageStart ?startPage .
} UNION { }
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageEnd ?endPage . ?infoResource bibo:pageEnd ?endPage .
} UNION { }
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:placeOfPublication ?locale . ?infoResource core:placeOfPublication ?locale .
} UNION { }
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
}
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:hasPublicationVenue ?publishedIn .
}
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal .
}
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; . ?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:reproducedIn ?appearsInObj . ?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn ?appearsInObj rdfs:label ?appearsIn .
} UNION { }
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf .
}
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a bibo:Book . ?infoResource a bibo:Book .
?infoResource core:relatedBy ?editorship . ?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?editorObj . ?editorship core:relates ?editorObj .
?editorObj a foaf:Person . ?editorObj a foaf:Person .
?editorObj rdfs:label ?editor ?editorObj rdfs:label ?editor .
} UNION { }
UNION
{
?subject ?property ?infoResource . ?subject ?property ?infoResource .
?infoResource a bibo:BookSection . ?infoResource a bibo:BookSection .
?infoResource core:relatedBy ?editorship . ?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship . ?editorship a core:Editorship .
?editorship core:relates ?editorObj . ?editorship core:relates ?editorObj .
?editorObj a foaf:Person . ?editorObj a foaf:Person .
?editorObj rdfs:label ?editor ?editorObj rdfs:label ?editor .
} UNION {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf
} }
} }
</query-construct> </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 bibo: &lt;http://purl.org/ontology/bibo/&gt;
CONSTRUCT {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
} WHERE {
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
}
</query-construct>
<template>propStatement-publisherOf.ftl</template> <template>propStatement-publisherOf.ftl</template>
</list-view-config> </list-view-config>

View file

@ -20,23 +20,28 @@
?label ?label
?localName ?localName
?type ?type
?title WHERE { ?title
WHERE
{
?subject ?property ?object . ?subject ?property ?object .
LET (?localName := afn:localname(?object)) LET (?localName := afn:localname(?object))
OPTIONAL { ?object rdfs:label ?label } OPTIONAL { ?object rdfs:label ?label }
OPTIONAL { OPTIONAL
{
# Get mostSpecificType only for Persons # Get mostSpecificType only for Persons
?object vitro:mostSpecificType ?subclass . ?object vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?type . ?subclass rdfs:label ?type .
# Display only a mostSpecificType that belongs to a classgroup. # Display only a mostSpecificType that belongs to a classgroup.
?subclass vitro:inClassGroup ?classGroup . #?subclass vitro:inClassGroup ?classGroup .
?classGroup a vitro:ClassGroup #?classGroup a vitro:ClassGroup
} }
OPTIONAL { ?object obo:ARG_2000028 ?vcard . OPTIONAL
{
?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj . ?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title ?titleObj vcard:title ?title
} }
@ -51,23 +56,6 @@
} ORDER BY <collated> ?subclass </collated> ASC( ?label ) ASC( ?localName ) ?type } ORDER BY <collated> ?subclass </collated> ASC( ?label ) ASC( ?localName ) ?type
</query-select> </query-select>
<query-construct>
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 ?object .
?object rdfs:label ?label .
} WHERE {
{
?subject ?property ?object .
} UNION {
?subject ?property ?object .
?object rdfs:label ?label .
}
}
</query-construct>
<query-construct> <query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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;
@ -75,29 +63,44 @@
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt; PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt; PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT { CONSTRUCT
{
?subject ?property ?object . ?subject ?property ?object .
?object rdfs:label ?label .
?object vitro:mostSpecificType ?subclass . ?object vitro:mostSpecificType ?subclass .
?subclass vitro:inClassGroup ?classGroup . ?subclass vitro:inClassGroup ?classGroup .
?classGroup a vitro:ClassGroup . ?classGroup a vitro:ClassGroup .
?subclass rdfs:label ?type . ?subclass rdfs:label ?type .
?object obo:ARG_2000028 ?vcard . ?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj . ?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title ?titleObj vcard:title ?title .
} WHERE { }
WHERE
{
{ {
?subject ?property ?object . ?subject ?property ?object .
} UNION { }
UNION
{
?subject ?property ?object .
?object rdfs:label ?label .
}
UNION
{
?subject ?property ?object . ?subject ?property ?object .
?object vitro:mostSpecificType ?subclass . ?object vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?type . ?subclass rdfs:label ?type .
# Display only a mostSpecificType that belongs to a classgroup.
?subclass vitro:inClassGroup ?classGroup . ?subclass vitro:inClassGroup ?classGroup .
?classGroup a vitro:ClassGroup ?classGroup a vitro:ClassGroup .
} UNION { }
UNION
{
?subject ?property ?object . ?subject ?property ?object .
?object obo:ARG_2000028 ?vcard . ?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj . ?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title ?titleObj vcard:title ?title .
} }
} }
</query-construct> </query-construct>

View file

@ -19,34 +19,43 @@
?dateTimeStart ?dateTimeEnd ?dateTimeStart ?dateTimeEnd
?hideThis ?hideThis
?objectType ?objectType
WHERE { WHERE
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:ResearcherRole . ?role a core:ResearcherRole .
?role vitro:mostSpecificType ?roleSubclass ?role vitro:mostSpecificType ?roleSubclass .
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity . OPTIONAL
?activity rdfs:label ?activityLabel {
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel .
<collated> <collated>
?activity vitro:mostSpecificType ?subclass ?activity vitro:mostSpecificType ?subclass .
</collated> </collated>
} }
OPTIONAL { ?role core:relatedBy ?activity . OPTIONAL
?activity rdfs:label ?activityLabel {
?role core:relatedBy ?activity .
?activity rdfs:label ?activityLabel .
<collated> <collated>
?activity vitro:mostSpecificType ?subclass ?activity vitro:mostSpecificType ?subclass .
</collated> </collated>
} }
OPTIONAL { ?role rdfs:label ?roleLabel } OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL { ?role core:hideFromDisplay ?hideThis } OPTIONAL { ?role core:hideFromDisplay ?hideThis }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart ?dateTimeStartValue core:dateTime ?dateTimeStart .
} }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . OPTIONAL
{
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue . ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd ?dateTimeEndValue core:dateTime ?dateTimeEnd .
} }
FILTER ( ?roleSubclass = core:ResearcherRole) FILTER ( ?roleSubclass = core:ResearcherRole)
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName } ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
@ -56,111 +65,95 @@
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; PREFIX core: &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; PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT
{
?subject ?property ?role .
CONSTRUCT {
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:relatedBy ?activity .
?activity vitro:mostSpecificType ?subclass .
?activity rdfs:label ?activityName .
} WHERE { {
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:relatedBy ?activity .
?activity vitro:mostSpecificType ?subclass
} 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;
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 .
?activity rdfs:label ?activityName .
} WHERE { {
?subject ?property ?role .
?role a core:ResearcherRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass
} UNION {
?subject ?property ?role .
?role a core:ResearcherRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityName .
} }
</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 a core:ResearcherRole .
?role vitro:mostSpecificType ?roleSubclass .
?role rdfs:label ?roleLabel . ?role rdfs:label ?roleLabel .
?role core:hideFromDisplay ?hideThis . ?role core:hideFromDisplay ?hideThis .
?role vitro:mostSpecificType ?roleSubclass
} WHERE { ?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass .
?activity rdfs:label ?activityName .
}
WHERE
{
{ {
?subject ?property ?role . ?subject ?property ?role .
?role a core:ResearcherRole . ?role a core:ResearcherRole .
} UNION { }
?subject ?property ?role . UNION
?role a core:ResearcherRole . {
?role rdfs:label ?roleLabel .
} UNION {
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:hideFromDisplay ?hideThis .
} UNION {
?subject ?property ?role . ?subject ?property ?role .
?role a core:ResearcherRole . ?role a core:ResearcherRole .
?role vitro:mostSpecificType ?roleSubclass . ?role vitro:mostSpecificType ?roleSubclass .
} }
UNION
{
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:hideFromDisplay ?hideThis .
} }
</query-construct> UNION
{
<query-construct> ?subject ?property ?role .
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt; ?role a core:ResearcherRole .
CONSTRUCT { ?role rdfs:label ?roleLabel .
}
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:ResearcherRole . ?role a core:ResearcherRole .
?role core:dateTimeInterval ?dateTimeInterval . ?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart ?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> UNION
{
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role . ?subject ?property ?role .
?role a core:ResearcherRole . ?role a core:ResearcherRole .
?role core:dateTimeInterval ?dateTimeInterval . ?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue . ?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd ?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE { }
UNION
{
?subject ?property ?role . ?subject ?property ?role .
?role a core:ResearcherRole . ?role a core:ResearcherRole .
?role core:dateTimeInterval ?dateTimeInterval . ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?dateTimeInterval core:end ?dateTimeEndValue . ?activity vitro:mostSpecificType ?subclass .
?dateTimeEndValue core:dateTime ?dateTimeEnd }
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 vitro:mostSpecificType ?subclass
}
UNION
{
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:relatedBy ?activity .
?activity rdfs:label ?activityName .
}
} }
</query-construct> </query-construct>