[VIVO-1400] List view queries rewritten as selects with expanded OPTIONAL clauses (#56)

This commit is contained in:
grahamtriggs 2017-10-13 20:10:39 +01:00 committed by GitHub
parent 9e6b10aa2b
commit f187745099
50 changed files with 1478 additions and 4354 deletions

View file

@ -13,24 +13,15 @@
WHERE {
?subject ?property ?vcard .
?vcard vcard:hasEmail ?email .
?email vcard:email ?emailAddress
MINUS {?email a vcard:Work}
?email vcard:email ?emailAddress .
MINUS {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasEmail ?email .</precise-subquery>
?email a vcard:Work .
}
}
</query-select>
<query-construct>
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT {
?subject ?property ?vcard .
?vcard vcard:hasEmail ?email .
?email ?emailProperty ?emailValue
} WHERE {
?subject ?property ?vcard .
?vcard vcard:hasEmail ?email .
?email ?emailProperty ?emailValue
}
</query-construct>
<template>propStatement-emailAddress.ftl</template>
<postprocessor>edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual.MaintainDuplicatesObjectPropertyDataPostProcessor</postprocessor>
</list-view-config>

View file

@ -28,163 +28,74 @@
WHERE
{
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
LET ( ?localName := afn:localname(?advisingRel) )
OPTIONAL { ?advisingRel rdfs:label ?advisingRelLabel }
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .</precise-subquery>
?advisingRel rdfs:label ?advisingRelLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .</precise-subquery>
?advisingRel core:relates ?advisorRole .
?advisorRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?advisor .
?advisor a foaf:Person .
?advisor rdfs:label ?advisorLabel
?advisor rdfs:label ?advisorLabel .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .</precise-subquery>
?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .</precise-subquery>
?advisingRel core:degreeCandidacy ?degree .
?degree core:abbreviation ?degreeAbbr .
}
<collated>
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .</precise-subquery>
?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship
?subclass rdfs:subClassOf core:AdvisingRelationship .
}
</collated>
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .</precise-subquery>
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .</precise-subquery>
?advisingRel core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd)
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX 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 ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?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 .
?advisorRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?advisor .
?advisor a foaf:Person .
?advisor rdfs:label ?advisorLabel .
?advisor &lt;http://purl.obolibrary.org/obo/RO_0000053&gt; ?advisorRole .
?advisorRole a core:AdvisorRole .
}
WHERE
{
{
?subject ?property ?adviseeRole .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
}
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 .
?adviseeRole a core:AdviseeRole .
?adviseeRole core:relatedBy ?advisingRel .
?advisingRel a core:AdvisingRelationship .
?advisingRel core:relates ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisorRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?advisor .
?advisor a foaf:Person .
?advisor &lt;http://purl.obolibrary.org/obo/RO_0000053&gt; ?advisorRole .
?advisorRole a core:AdvisorRole .
?advisor rdfs:label ?advisorLabel
}
}
</query-construct>
<template>propStatement-adviseeIn.ftl</template>
</list-view-config>

View file

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

View file

@ -32,279 +32,138 @@
WHERE
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass }
OPTIONAL { ?infoResource bibo:volume ?volume }
OPTIONAL { ?infoResource bibo:pageStart ?startPage }
OPTIONAL { ?infoResource bibo:pageEnd ?endPage }
OPTIONAL { ?infoResource bibo:doi ?doi }
OPTIONAL { ?infoResource bibo:pmid ?pmid }
OPTIONAL { ?infoResource bibo:isbn10 ?isbn10 }
OPTIONAL { ?infoResource bibo:isbn13 ?isbn13 }
OPTIONAL { ?infoResource bibo:oclc ?oclc }
OPTIONAL { ?infoResource core:placeOfPublication ?locale }
OPTIONAL
{
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; ;
rdfs:label ?infoResourceName .
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource vitro:mostSpecificType ?subclass .
}
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:volume ?volume .
}
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:pageStart ?startPage .
}
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:pageEnd ?endPage .
}
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:doi ?doi .
}
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:pmid ?pmid .
}
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:isbn10 ?isbn10 .
}
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:isbn13 ?isbn13 .
}
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:oclc ?oclc .
}
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:placeOfPublication ?locale .
}
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:publisher ?publisherObj .
?publisherObj rdfs:label ?publisher .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor .
}
OPTIONAL { ?authorship core:hideFromDisplay ?hideThis }
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship .</precise-subquery>
?authorship core:hideFromDisplay ?hideThis .
}
} ORDER BY ?subclass DESC(?dateTime) ?infoResourceName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
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 ?authorship .
?authorship a core:Authorship .
?authorship core:hideFromDisplay ?hideThis .
?authorship core:relates ?infoResource .
?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:pageStart ?startPage .
?infoResource bibo:pageEnd ?endPage .
?infoResource bibo:doi ?doi .
?infoResource bibo:pmid ?pmid .
?infoResource bibo:isbn10 ?isbn10 .
?infoResource bibo:isbn13 ?isbn13 .
?infoResource bibo:oclc ?oclc .
?infoResource core:placeOfPublication ?locale .
?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn .
?infoResource core:publisher ?publisherObj .
?publisherObj rdfs:label ?publisher .
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor .
}
WHERE
{
{
?subject ?property ?authorship .
?authorship a core:Authorship
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:hideFromDisplay ?hideThis .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource vitro:mostSpecificType ?subclass .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:volume ?volume .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageStart ?startPage .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageEnd ?endPage .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:doi ?doi .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pmid ?pmid .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:isbn10 ?isbn10 .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:isbn13 ?isbn13 .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:oclc ?oclc .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:placeOfPublication ?locale .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship 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 ?authorship .
?authorship a core:Authorship .
?authorship 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 ?authorship .
?authorship a core:Authorship .
?authorship 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 ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?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 ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a bibo:Book .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor .
}
UNION
{
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a bibo:BookSection .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor .
}
}
</query-construct>
<template>propStatement-authorInAuthorship.ftl</template>
</list-view-config>

View file

@ -26,119 +26,47 @@
{
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
OPTIONAL { ?awardReceipt rdfs:label ?receiptLabel }
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .</precise-subquery>
?awardReceipt rdfs:label ?receiptLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .</precise-subquery>
?awardReceipt core:relates ?award .
?award a core:Award .
?award core:relatedBy ?awardReceipt .
?award rdfs:label ?awardLabel .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .</precise-subquery>
?awardReceipt core:assignedBy ?assignedBy .
?assignedBy rdfs:label ?assignedByLabel .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .</precise-subquery>
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .</precise-subquery>
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .</precise-subquery>
?awardReceipt core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
}
} ORDER BY DESC(?dateTime) DESC(?dateTimeEnd)
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT
{
?subject ?property ?awardReceipt .
?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:assignedBy ?assignedBy .
?assignedBy rdfs:label ?assignedByLabel .
?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 core:assignedBy ?assignedBy .
?assignedBy rdfs:label ?assignedByLabel .
}
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>
<template>propStatement-awardOrHonor.ftl</template>
</list-view-config>

View file

@ -26,126 +26,48 @@
{
?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .
OPTIONAL { ?awardReceipt rdfs:label ?receiptLabel }
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .</precise-subquery>
?awardReceipt rdfs:label ?receiptLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .</precise-subquery>
?awardReceipt core:relates ?award .
?award a core:Award .
?award core:relatedBy ?awardReceipt .
?award rdfs:label ?awardLabel .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .</precise-subquery>
?awardReceipt core:relates ?givenTo .
?givenTo a foaf:Person .
?givenTo rdfs:label ?givenToLabel .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .</precise-subquery>
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .</precise-subquery>
?awardReceipt core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?awardReceipt .
?awardReceipt a core:AwardReceipt .</precise-subquery>
?awardReceipt core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
}
} ORDER BY DESC(?dateTime) DESC(?dateTimeEnd)
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT
{
?subject ?property ?awardReceipt .
?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 .
?awardReceipt a core:AwardReceipt .
?awardReceipt rdfs:label ?receiptLabel .
?awardReceipt core:relates ?award .
?award a core:Award .
?award core:relatedBy ?awardReceipt .
?award rdfs:label ?awardLabel .
}
}
</query-construct>
<template>propStatement-awardOrHonorGiven.ftl</template>
</list-view-config>

View file

@ -19,32 +19,45 @@
WHERE
{
?subject ?property ?dateTimeInterval
?subject ?property ?dateTimeInterval .
OPTIONAL
{
?dateTimeInterval core:start ?valueStart
OPTIONAL {
<precise-subquery>?subject ?property ?dateTimeInterval .</precise-subquery>
?dateTimeInterval core:start ?valueStart .
LET (?valueStartName := afn:localname(?valueStart))
OPTIONAL { ?valueStart core:dateTime ?dateTimeStart }
OPTIONAL
{
?valueStart core:dateTimePrecision ?dateTimePrecisionStart
OPTIONAL {
<precise-subquery>?subject ?property ?dateTimeInterval .
?dateTimeInterval core:start ?valueStart .</precise-subquery>
?valueStart core:dateTime ?dateTimeStart .
}
OPTIONAL {
<precise-subquery>?subject ?property ?dateTimeInterval .
?dateTimeInterval core:start ?valueStart .</precise-subquery>
?valueStart core:dateTimePrecision ?dateTimePrecisionStart .
LET (?precisionStart := afn:localname(?dateTimePrecisionStart))
}
}
OPTIONAL
{
?dateTimeInterval core:end ?valueEnd
OPTIONAL {
<precise-subquery>?subject ?property ?dateTimeInterval .</precise-subquery>
?dateTimeInterval core:end ?valueEnd .
LET (?valueEndName := afn:localname(?valueEnd))
OPTIONAL { ?valueEnd core:dateTime ?dateTimeEnd }
OPTIONAL
{
?valueEnd core:dateTimePrecision ?dateTimePrecisionEnd
OPTIONAL {
<precise-subquery>?subject ?property ?dateTimeInterval .
?dateTimeInterval core:end ?valueEnd .</precise-subquery>
?valueEnd core:dateTime ?dateTimeEnd .
}
OPTIONAL {
<precise-subquery>?subject ?property ?dateTimeInterval .
?dateTimeInterval core:end ?valueEnd .</precise-subquery>
?valueEnd core:dateTimePrecision ?dateTimePrecisionEnd .
LET (?precisionEnd := afn:localname(?dateTimePrecisionEnd))
}
}
OPTIONAL {?dateTimeInterval rdfs:label ?label}
OPTIONAL {
<precise-subquery>?subject ?property ?dateTimeInterval .</precise-subquery>
?dateTimeInterval rdfs:label ?label .
}
<critical-data-required>
FILTER ( bound(?dateTimeStart) || bound(?dateTimeEnd) )
@ -52,43 +65,5 @@
}
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT
{
?subject ?property ?dateTimeInterval .
?dateTimeInterval rdfs:label ?label .
?dateTimeInterval core:start ?sStart .
?dateTimeInterval core:end ?sEnd .
?sStart ?p ?o .
?sEnd ?p ?o .
}
WHERE
{
{
?subject core:dateTimeInterval ?dateTimeInterval .
}
UNION
{
?subject core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval rdfs:label ?label .
}
UNION
{
?subject ?property ?dateTimeInterval .
?dateTimeInterval core:start ?sStart .
?sStart ?p ?o .
}
UNION
{
?subject ?property ?dateTimeInterval .
?dateTimeInterval core:end ?sEnd .
?sEnd ?p ?o .
}
}
</query-construct>
<template>propStatement-dateTimeInterval.ftl</template>
</list-view-config>

View file

@ -11,30 +11,22 @@
SELECT DISTINCT ?dateTimeValue
(afn:localname(?dateTimePrecision) AS ?precision)
?dateTime WHERE {
?subject ?property ?dateTimeValue
OPTIONAL { ?dateTimeValue core:dateTime ?dateTime }
OPTIONAL { ?dateTimeValue core:dateTimePrecision ?dateTimePrecision }
?dateTime
WHERE {
?subject ?property ?dateTimeValue .
OPTIONAL {
<precise-subquery>?subject ?property ?dateTimeValue .</precise-subquery>
?dateTimeValue core:dateTime ?dateTime .
}
OPTIONAL {
<precise-subquery>?subject ?property ?dateTimeValue .</precise-subquery>
?dateTimeValue core:dateTimePrecision ?dateTimePrecision .
}
<critical-data-required>
FILTER ( bound(?dateTime) )
</critical-data-required>
}
</query-select>
<query-construct>
CONSTRUCT {
?subject ?property ?dateTimeValue .
?dateTimeValue ?p ?o .
} WHERE {
{
?subject ?property ?dateTimeValue
}
UNION {
?subject ?property ?dateTimeValue .
?dateTimeValue ?p ?o .
}
}
</query-construct>
<template>propStatement-dateTimeValue.ftl</template>
</list-view-config>

View file

@ -27,30 +27,30 @@
?subject ?property ?object .
LET (?localName := afn:localname(?object))
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?object .</precise-subquery>
?object rdfs:label ?label .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?object .</precise-subquery>
?object vitro:mostSpecificType ?specificObjectType .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?object .</precise-subquery>
# Get mostSpecificType only for Persons
?object vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?type .
# Display only a mostSpecificType that belongs to a classgroup.
# CONSTRUCT will apply this filter
# ?subclass vitro:inClassGroup ?classGroup .
# ?classGroup a vitro:ClassGroup .
?subclass vitro:inClassGroup ?classGroup .
?classGroup a vitro:ClassGroup .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?object .</precise-subquery>
?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title .
@ -66,57 +66,5 @@
} ORDER BY <collated> ?subclass </collated> ASC( ?label ) ASC( ?localName ) ?type
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT
{
?subject ?property ?object .
?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 .
}
UNION
{
?subject ?property ?object .
?object rdfs:label ?label .
}
UNION
{
?subject ?property ?object .
?object vitro:mostSpecificType ?subclass .
}
UNION
{
?subject ?property ?object .
?object vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?type .
# Display only a mostSpecificType that belongs to a classgroup.
?subclass vitro:inClassGroup ?classGroup .
?classGroup a vitro:ClassGroup .
}
UNION
{
?subject ?property ?object .
?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title .
}
}
</query-construct>
<template>propStatement-default.ftl</template>
</list-view-config>

View file

@ -15,38 +15,19 @@
?degreeAbbr
WHERE {
?subject ?property ?awardedDegree .
?awardedDegree a core:AwardedDegree .
?awardedDegree core:relates ?degree .
?degree rdfs:label ?degreeName
?degree rdfs:label ?degreeName .
OPTIONAL { ?degree core:abbreviation ?degreeAbbr }
OPTIONAL {
<precise-subquery>?subject ?property ?awardedDegree .
?awardedDegree a core:AwardedDegree .
?awardedDegree core:relates ?degree .</precise-subquery>
?degree a core:AcademicDegree .
?degree core:abbreviation ?degreeAbbr .
}
}
</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;
CONSTRUCT {
?subject ?property ?awardedDegree .
?awardedDegree core:relates ?degree .
?degree rdfs:label ?degreeName .
?degree core:abbreviation ?degreeAbbr
} WHERE {
{
?subject ?property ?awardedDegree .
?awardedDegree a core:AwardedDegree .
?awardedDegree core:relates ?degree .
?degree a core:AcademicDegree .
?degree rdfs:label ?degreeName
} UNION {
?subject ?property ?awardedDegree .
?awardedDegree a core:AwardedDegree .
?awardedDegree core:relates ?degree .
?degree a core:AcademicDegree .
?degree core:abbreviation ?degreeAbbr
}
}
</query-construct>
<template>propStatement-degreeEarned.ftl</template>
</list-view-config>

View file

@ -10,21 +10,10 @@
SELECT ?value
WHERE {
?subject ?property ?value
?subject ?property ?value .
FILTER isLiteral(?value)
} ORDER BY ?value
</query-select>
<query-construct>
CONSTRUCT {
?subject ?property ?value
} WHERE {
?subject ?property ?value
}
</query-construct>
<template>propStatement-doi.ftl</template>
</list-view-config>

View file

@ -26,37 +26,83 @@
WHERE
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
OPTIONAL { ?infoResource bibo:volume ?volume }
OPTIONAL { ?infoResource bibo:pageStart ?startPage }
OPTIONAL { ?infoResource bibo:pageEnd ?endPage }
OPTIONAL { ?infoResource core:placeOfPublication ?locale }
OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass }
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:volume ?volume .
}
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:pageStart ?startPage .
}
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:pageEnd ?endPage .
}
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:placeOfPublication ?locale .
}
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource vitro:mostSpecificType ?subclass .
}
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:publisher ?publisherObj .
?publisherObj rdfs:label ?publisher .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship ;
core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
}
@ -67,179 +113,5 @@
} ORDER BY ?subclass DESC(?dateTime) ?infoResourceName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
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 .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?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 .
?publishedIn rdfs:label ?journal .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor .
}
WHERE
{
{
?subject ?property ?editorship .
?editorship a core:Editorship
}
UNION
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
}
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 .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName
}
UNION
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?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 ?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 .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal
}
UNION
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a bibo:Book .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor .
}
UNION
{
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?infoResource .
?infoResource a bibo:BookSection .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor .
}
}
</query-construct>
<template>propStatement-editorship.ftl</template>
</list-view-config>

View file

@ -19,39 +19,60 @@
WHERE
{
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess
OPTIONAL { ?edTraining vitro:mostSpecificType ?subclass . }
OPTIONAL
{
?edTraining a core:EducationalProcess .
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining vitro:mostSpecificType ?subclass .
}
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree .
?degree a core:AcademicDegree .
?degree rdfs:label ?degreeName .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree .
?degree a core:AcademicDegree .
?degree core:abbreviation ?degreeAbbr .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?org .
?org a foaf:Organization .
?org rdfs:label ?orgName .
}
OPTIONAL { ?edTraining core:majorField ?majorField }
OPTIONAL { ?edTraining core:departmentOrSchool ?deptOrSchool }
OPTIONAL { ?edTraining core:supplementalInformation ?info }
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining core:majorField ?majorField .
}
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining core:departmentOrSchool ?deptOrSchool .
}
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining core:supplementalInformation ?info .
}
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
@ -59,141 +80,5 @@
} ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart)
</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 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 ?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 .
?edTraining a core:EducationalProcess .
?edTraining vitro:mostSpecificType ?subclass .
}
UNION
{
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining core:majorField ?majorField .
}
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 .
?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 &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?org .
?org a foaf:Organization .
}
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 .
}
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 rdfs:label ?degreeName .
}
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>
<template>propStatement-educationalTraining.ftl</template>
</list-view-config>

View file

@ -25,13 +25,19 @@
WHERE
{
?subject ?property ?object .
?object a ?objectType
?object a ?objectType .
LET (?localName := afn:localname(?object))
OPTIONAL { ?object rdfs:label ?label }
OPTIONAL {
<precise-subquery>?subject ?property ?object .
?object a ?objectType .</precise-subquery>
?object rdfs:label ?label .
}
OPTIONAL {
<precise-subquery>?subject ?property ?object .
?object a ?objectType .</precise-subquery>
OPTIONAL
{
# Get mostSpecificType only for Persons
?object a foaf:Person .
?object vitro:mostSpecificType ?typeUri .
@ -43,15 +49,20 @@
# ?classGroup a vitro:ClassGroup .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?object .
?object a ?objectType .</precise-subquery>
?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title .
}
<collated>
OPTIONAL { ?object a ?subclass }
OPTIONAL {
<precise-subquery>?subject ?property ?object .
?object a ?objectType .</precise-subquery>
?object a ?subclass .
}
FILTER ( afn:namespace(?subclass) != "http://vitro.mannlib.cornell.edu/ns/vitro/0.7#" )
</collated>
@ -61,55 +72,5 @@
} ORDER BY <collated> ?subclass </collated> ASC( ?label ) ASC( ?localName ) ?type
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT {
?subject ?property ?object .
?object a ?subclass .
?object rdfs:label ?label .
?object vitro:mostSpecificType ?typeUri .
?typeUri vitro:inClassGroup ?classGroup .
?classGroup a vitro:ClassGroup .
?typeUri rdfs:label ?type .
?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title
} WHERE {
{
?subject ?property ?object .
}
UNION
{
?subject ?property ?object .
?object a ?subclass .
}
UNION
{
?subject ?property ?object .
?object rdfs:label ?label .
}
UNION
{
?subject ?property ?object .
?object vitro:mostSpecificType ?typeUri .
?typeUri rdfs:label ?type .
?typeUri vitro:inClassGroup ?classGroup .
?classGroup a vitro:ClassGroup .
}
UNION
{
?subject ?property ?object .
?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title .
}
}
</query-construct>
<template>propStatement-default.ftl</template>
</list-view-config>

View file

@ -13,25 +13,10 @@
?subject ?property ?vcard .
?vcard vcard:hasTelephone ?phone .
?phone a vcard:Fax .
?phone vcard:telephone ?number
?phone vcard:telephone ?number .
}
</query-select>
<query-construct>
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT {
?subject ?property ?vcard .
?vcard vcard:hasTelephone ?phone .
?phone a vcard:Fax .
?phone ?phoneProperty ?phoneValue
} WHERE {
?subject ?property ?vcard .
?vcard vcard:hasTelephone ?phone .
?phone a vcard:Fax .
?phone ?phoneProperty ?phoneValue
}
</query-construct>
<template>propStatement-phoneFaxNumber.ftl</template>
<postprocessor>edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual.MaintainDuplicatesObjectPropertyDataPostProcessor</postprocessor>
</list-view-config>

View file

@ -16,32 +16,35 @@
?prefix
WHERE {
?subject ?property ?vcard .
?vcard vcard:hasName ?fullName
OPTIONAL { ?fullName vcard:givenName ?firstName }
OPTIONAL { ?fullName core:middleName ?middleName }
OPTIONAL { ?fullName vcard:familyName ?lastName }
OPTIONAL { ?fullName vcard:honorificSuffix ?suffix }
OPTIONAL { ?fullName vcard:honorificPrefix ?prefix }
?vcard vcard:hasName ?fullName .
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasName ?fullName .</precise-subquery>
?fullName vcard:givenName ?firstName .
}
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasName ?fullName .</precise-subquery>
?fullName core:middleName ?middleName .
}
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasName ?fullName .</precise-subquery>
?fullName vcard:familyName ?lastName .
}
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasName ?fullName .</precise-subquery>
?fullName vcard:honorificSuffix ?suffix .
}
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasName ?fullName .</precise-subquery>
?fullName vcard:honorificPrefix ?prefix .
}
}
</query-select>
<query-construct>
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT {
?subject ?property ?vcard .
?vcard vcard:hasName ?fullName .
?fullName ?fullNameProperty ?fullNameValue
} WHERE {
{
?subject ?property ?vcard
} UNION {
?subject ?property ?vcard .
?vcard vcard:hasName ?fullName .
?fullName ?fullNameProperty ?fullNameValue
}
}
</query-construct>
<template>propStatement-fullName.ftl</template>
<postprocessor>edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual.MaintainDuplicatesObjectPropertyDataPostProcessor</postprocessor>
</list-view-config>

View file

@ -17,7 +17,10 @@
WHERE {
?subject ?property ?administratorRole .
?administratorRole a core:AdministratorRole .
OPTIONAL { ?administratorRole obo:RO_0000052 ?organization .
OPTIONAL {
<precise-subquery>?subject ?property ?administratorRole .
?administratorRole a core:AdministratorRole .</precise-subquery>
?administratorRole obo:RO_0000052 ?organization .
?organization a foaf:Organization .
?organization obo:RO_0000053 ?administratorRole .
?organization rdfs:label ?organizationLabel .
@ -25,33 +28,5 @@
} ORDER BY ?organizationLabel
</query-select>
<query-construct>
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
CONSTRUCT {
?subject ?property ?administratorRole .
?administratorRole a core:AdministratorRole .
?administratorRole obo:RO_0000052 ?organization .
?organization a foaf:Organization .
?organization obo:RO_0000053 ?administratorRole .
?organization rdfs:label ?organizationLabel .
} WHERE {
{
?subject ?property ?administratorRole .
?administratorRole a core:AdministratorRole .
} UNION {
?subject ?property ?administratorRole .
?administratorRole a core:AdministratorRole .
?administratorRole obo:RO_0000052 ?organization .
?organization a foaf:Organization .
?organization obo:RO_0000053 ?administratorRole .
?organization rdfs:label ?organizationLabel .
}
}
</query-construct>
<template>propStatement-grantAdministeredBy.ftl</template>
</list-view-config>

View file

@ -14,55 +14,21 @@
WHERE {
?subject ?property ?concept .
LET (?conceptName := afn:localname(?concept))
optional {?concept rdfs:label ?conceptLabel}
optional {?concept rdfs:isDefinedBy ?vocabularySource
optional { ?vocabularySource rdfs:label ?vocabularySourceName}}
OPTIONAL {
<precise-subquery>?subject ?property ?concept .</precise-subquery>
?concept rdfs:label ?conceptLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?concept .</precise-subquery>
?concept rdfs:isDefinedBy ?vocabularySource .
OPTIONAL {
<precise-subquery>?subject ?property ?concept .
?concept rdfs:isDefinedBy ?vocabularySource .</precise-subquery>
?vocabularySource rdfs:label ?vocabularySourceName .
}
}
} ORDER BY ?conceptLabel ?conceptName
</query-select>
<query-construct>
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?concept .
} WHERE {
?subject ?property ?concept .
}
</query-construct>
<query-construct>
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?concept .
?concept rdfs:label ?conceptLabel
} WHERE {
?subject ?property ?concept .
?concept rdfs:label ?conceptLabel
}
</query-construct>
<query-construct>
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?concept .
?concept rdfs:isDefinedBy ?vocabularySource
} WHERE {
?subject ?property ?concept .
?concept rdfs:isDefinedBy ?vocabularySource
}
</query-construct>
<query-construct>
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?concept .
?concept rdfs:isDefinedBy ?vocabularySource .
?vocabularySource rdfs:label ?vocabularySourceName
} WHERE {
?subject ?property ?concept .
?concept rdfs:isDefinedBy ?vocabularySource .
?vocabularySource rdfs:label ?vocabularySourceName
}
</query-construct>
<template>propStatement-hasAssociatedConcept.ftl</template>
</list-view-config>

View file

@ -24,75 +24,75 @@
WHERE {
?subject ?property ?role
?subject ?property ?role .
OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL { ?role rdfs:label ?roleLabel . }
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?event1 .
LET (?event1Name := afn:localname(?event1))
OPTIONAL { ?event1 rdfs:label ?event1Label }
OPTIONAL { ?event1 rdfs:label ?event1Label . }
OPTIONAL { ?event2 a event:Event .
OPTIONAL { ?event2 rdfs:label ?event2Label }
OPTIONAL { ?event2 rdfs:label ?event2Label . }
{
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2 .
} UNION {
?event2 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1
?event2 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
}
}
OPTIONAL {
{
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event2 .
} UNION {
?event2 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
}
OPTIONAL { ?event3 rdfs:label ?event3Label }
OPTIONAL { ?event3 rdfs:label ?event3Label . }
}
OPTIONAL { ?series a vivo:EventSeries .
OPTIONAL { ?series rdfs:label ?seriesLabel }
OPTIONAL { ?series rdfs:label ?seriesLabel . }
{
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
} UNION {
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
}
}
OPTIONAL {
{
?event1 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?event3 .
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
} UNION {
?event3 &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event1 .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event3
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?event3 .
}
OPTIONAL { ?series rdfs:label ?seriesLabel }
OPTIONAL { ?series rdfs:label ?seriesLabel . }
}
<collated>
?event1 vitro:mostSpecificType ?subclass .
{
?subclass rdfs:subClassOf event:Event
?subclass rdfs:subClassOf event:Event .
} UNION {
?subclass owl:equivalentClass event:Event
?subclass owl:equivalentClass event:Event .
}
</collated>
}
OPTIONAL { ?role vivo:dateTimeInterval ?dateTimeInterval
OPTIONAL { ?role vivo:dateTimeInterval ?dateTimeInterval .
OPTIONAL { ?dateTimeInterval vivo:start ?dateTimeStartValue .
?dateTimeStartValue vivo:dateTime ?dateTimeStart
?dateTimeStartValue vivo:dateTime ?dateTimeStart .
}
OPTIONAL { ?dateTimeInterval vivo:end ?dateTimeEndValue .
?dateTimeEndValue vivo:dateTime ?dateTimeEnd
?dateTimeEndValue vivo:dateTime ?dateTimeEnd .
}
}

View file

@ -24,120 +24,49 @@
?subject ?property ?role .
?role a core:ClinicalRole .
OPTIONAL
{
?role core:relates ?activity .
?activity rdfs:label ?activityLabel
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:ClinicalRole .</precise-subquery>
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityLabel .
<collated>
?activity vitro:mostSpecificType ?subclass
?activity vitro:mostSpecificType ?subclass .
</collated>
}
OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL
{
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:ClinicalRole .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel .
<collated>
?activity vitro:mostSpecificType ?subclass .
</collated>
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:ClinicalRole .</precise-subquery>
?role rdfs:label ?roleLabel .
}
OPTIONAL
{
<precise-subquery>?subject ?property ?role .
?role a core:ClinicalRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL
{
<precise-subquery>?subject ?property ?role .
?role a core:ClinicalRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT
{
?subject ?property ?role .
?role a core:ClinicalRole .
?role 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
}
WHERE
{
{
?subject ?property ?role .
?role a core:ClinicalRole .
}
UNION
{
?subject ?property ?role .
?role a core:ClinicalRole .
?role rdfs:label ?roleLabel .
}
UNION
{
?subject ?property ?role .
?role a core:ClinicalRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
UNION
{
?subject ?property ?role .
?role a core:ClinicalRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
UNION
{
?subject ?property ?role .
?role a core:ClinicalRole .
?role core:roleContributesTo ?activity .
?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 .
}
UNION
{
?subject ?property ?role .
?role a core:ClinicalRole .
?role core:relates ?activity .
?activity rdfs:label ?activityName .
}
UNION
{
?subject ?property ?role .
?role a core:ClinicalRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityName .
}
UNION
{
?subject ?property ?role .
?role a core:ClinicalRole .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName .
}
}
</query-construct>
<template>propStatement-hasRole.ftl</template>
</list-view-config>

View file

@ -7,6 +7,7 @@
<query-select>
PREFIX afn: &lt;http://jena.apache.org/ARQ/function#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&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;
@ -25,203 +26,98 @@
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Contract .
?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity)) .
}
OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel .
}
OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel .
}
OPTIONAL
{
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole .
}
OPTIONAL
{
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole .
}
OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
}
OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
OPTIONAL { ?role core:hideFromDisplay ?hideThis }
} ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?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 core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
LET (?activityName := afn:localname(?activity)) .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel .
?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel .
}
WHERE
{
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
}
UNION
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:hideFromDisplay ?hideThis .
}
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 .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity rdfs:label ?activityLabel .
}
UNION
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role core:elatedBy ?activity .
?activity a core:Contract .
?activity rdfs:label ?activityLabel
}
UNION
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .</precise-subquery>
?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 .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:assignedBy ?awardedBy .
?awardedBy a foaf:Organization .
?awardedBy rdfs:label ?awardedByLabel .
}
UNION
{
?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:relates ?adminedByRole .
?adminedByRole a core:AdminsitratorRole.
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy a foaf:Organization .
?adminedBy rdfs:label ?adminedByLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole .
}
</query-construct>
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Contract .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Contract .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:CoPrincipalInvestigatorRole .</precise-subquery>
?role core:hideFromDisplay ?hideThis .
}
} ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
</query-select>
<template>propStatement-hasInvestigatorRole.ftl</template>
</list-view-config>

View file

@ -19,100 +19,37 @@
?dateTimeStart
?dateTimeEnd
WHERE {
?subject ?property ?role
OPTIONAL { ?role core:roleContributesTo ?activity .
?subject ?property ?role .
?role a core:EditorRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:EditorRole .</precise-subquery>
?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?subclassLabel
?subclass rdfs:label ?subclassLabel .
}
OPTIONAL { ?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:EditorRole .</precise-subquery>
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName .
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:EditorRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:EditorRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
} ORDER BY <collated> ?subclass </collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:EditorRole .
?role vitro:mostSpecificType ?roleSubclass .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName .
?activity vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?subclassLabel
} WHERE {
{
?subject ?property ?role .
?role a core:EditorRole .
} UNION {
?subject ?property ?role .
?role a core:EditorRole .
?role vitro:mostSpecificType ?roleSubclass
} UNION {
?subject ?property ?role .
?role a core:EditorRole .
?role core:roleContributesTo ?activity
} UNION {
?subject ?property ?role .
?role a core:EditorRole .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName .
} UNION {
?subject ?property ?role .
?role a core:EditorRole .
?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?subclassLabel
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:EditorRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?role .
?role a core:EditorRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:EditorRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?role .
?role a core:EditorRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-hasEditReviewRole.ftl</template>
</list-view-config>

View file

@ -7,6 +7,7 @@
<query-select>
PREFIX afn: &lt;http://jena.apache.org/ARQ/function#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&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;
@ -23,206 +24,53 @@
?hideThis
WHERE {
?subject ?property ?role .
?role a core:InvestigatorRole .
?role vitro:mostSpecificType ?subclass
?role vitro:mostSpecificType core:InvestigatorRole .
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Contract .
?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity))
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel
}
OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel
}
OPTIONAL
{
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
}
OPTIONAL
{
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
}
OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
}
OPTIONAL
{
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
}
OPTIONAL { ?role core:hideFromDisplay ?hideThis }
FILTER ( ?subclass = core:InvestigatorRole)
} ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX 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 ?role .
?role a core:InvestigatorRole .
?role vitro:mostSpecificType ?subclass .
?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 core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
?activity a core:Contract .
?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Contract .
?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel .
}
WHERE
{
{
?subject ?property ?role .
?role a core:InvestigatorRole .
}
UNION
{
?subject ?property ?role .
?role a core:InvestigatorRole .
?role vitro:mostSpecificType ?subclass .
}
UNION
{
?subject ?property ?role .
?role a core:InvestigatorRole .
?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 .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity))
}
UNION
{
?subject ?property ?role .
?role a core:InvestigatorRole .
?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 .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:assignedBy ?awardedBy .
?awardedBy a foaf:Organization .
?awardedBy rdfs:label ?awardedByLabel .
}
UNION
{
?subject ?property ?role .
?role a core:InvestigatorRole .
?role core:relatedBy ?activity .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity a core:Grant .
?activity core:relates ?adminedByRole .
?adminedByRole a core:AdminsitratorRole.
@ -230,8 +78,63 @@
?adminedBy a foaf:Organization .
?adminedBy rdfs:label ?adminedByLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole .
}
</query-construct>
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?activity a core:Contract .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?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 .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?role &lt;http://vivoweb.org/ontology/core#relatedBy&gt; ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?activity a core:Grant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?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 .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:InvestigatorRole .</precise-subquery>
?role core:hideFromDisplay ?hideThis .
}
} ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
</query-select>
<template>propStatement-hasInvestigatorRole.ftl</template>
</list-view-config>

View file

@ -24,56 +24,79 @@
?dateTime
WHERE {
?subject ?property ?role .
?role a vivo:PresenterRole
?role a vivo:PresenterRole .
OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a vivo:PresenterRole .</precise-subquery>
?role rdfs:label ?roleLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a vivo:PresenterRole .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation rdfs:label ?presentationLabel .
LET (?presentationName := afn:localname(?presentation))
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a vivo:PresenterRole .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?conference a bibo:Conference .
?conference rdfs:label ?conferenceLabel
?conference rdfs:label ?conferenceLabel .
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a vivo:PresenterRole .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?workshop .
?conference rdfs:label ?conferenceLabel
?conference rdfs:label ?conferenceLabel .
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a vivo:PresenterRole .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?series rdfs:label ?seriesLabel
?series rdfs:label ?seriesLabel .
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a vivo:PresenterRole .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?workshop .
?series rdfs:label ?seriesLabel
?series rdfs:label ?seriesLabel .
}
<collated>
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a vivo:PresenterRole .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation vitro:mostSpecificType ?subclass .
}
</collated>
OPTIONAL { ?role vivo:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a vivo:PresenterRole .</precise-subquery>
?role vivo:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval vivo:start ?dateTimeStartValue .
?dateTimeStartValue vivo:dateTime ?dateTime
?dateTimeStartValue vivo:dateTime ?dateTime .
}
<critical-data-required>
@ -83,197 +106,5 @@
} ORDER BY <collated>?subclass</collated> DESC(?dateTime) ?presentationLabel ?presentationName
</query-select>
<query-construct>
PREFIX vivo: &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 vivo:PresenterRole .
?role rdfs:label ?roleLabel .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation rdfs:label ?presentationLabel .
?presentation vitro:mostSpecificType ?subclass .
} WHERE {
{
?subject ?property ?role .
?role a vivo:PresenterRole
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role rdfs:label ?roleLabel .
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation rdfs:label ?presentationLabel
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation vitro:mostSpecificType ?subclass .
}
}
</query-construct>
<query-construct>
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference a bibo:Conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?conference rdfs:label ?conferenceLabel
} WHERE {
{
?subject ?property ?role .
?role a vivo:PresenterRole .
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?conference a bibo:Conference .
?conference rdfs:label ?conferenceLabel
}
}
</query-construct>
<query-construct>
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?workshop a bibo:Workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?workshop .
?conference a bibo:Conference .
?conference rdfs:label ?conferenceLabel
} WHERE {
{
?subject ?property ?role .
?role a vivo:PresenterRole .
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?conference a bibo:Conference .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?workshop a bibo:Workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?conference .
?conference &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?workshop .
?conference a bibo:Conference .
?conference rdfs:label ?conferenceLabel
}
}
</query-construct>
<query-construct>
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?series a vivo:EventSeries .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?series rdfs:label ?seriesLabel
} WHERE {
{
?subject ?property ?role .
?role a vivo:PresenterRole .
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?series a vivo:EventSeries .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?series rdfs:label ?seriesLabel
}
}
</query-construct>
<query-construct>
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?workshop a bibo:Workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?workshop .
?series a vivo:EventSeries .
?series rdfs:label ?seriesLabel
} WHERE {
{
?subject ?property ?role .
?role a vivo:PresenterRole .
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?presentation .
?presentation a vivo:Presentation .
?presentation &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?presentation .
?workshop a bibo:Workshop .
?workshop &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?series .
?series &lt;http://purl.obolibrary.org/obo/BFO_0000051&gt; ?workshop .
?series a vivo:EventSeries .
?series rdfs:label ?seriesLabel
}
}
</query-construct>
<query-construct>
PREFIX vivo: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role vivo:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval vivo:start ?dateTimeStartValue .
?dateTimeStartValue vivo:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role vivo:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval vivo:start ?dateTimeStartValue .
?dateTimeStartValue vivo:dateTime ?dateTimeStart
}
</query-construct>
<template>propStatement-hasPresenterRole.ftl</template>
</list-view-config>

View file

@ -7,6 +7,7 @@
<query-select>
PREFIX afn: &lt;http://jena.apache.org/ARQ/function#&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&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;
@ -27,134 +28,50 @@
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
OPTIONAL
{
?role core:relatedBy ?activity .
?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity)) .
}
OPTIONAL
{
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel .
}
OPTIONAL
{
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel .
}
OPTIONAL
{
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole .
}
OPTIONAL
{
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole .
}
OPTIONAL
{
?role core:relatedBy ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
}
OPTIONAL
{
?role core:relatedBy ?activity .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
OPTIONAL { ?role core:hideFromDisplay ?hideThis }
} ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
</query-select>
<!--
?role rdfs:label ?roleLabel .
} UNION {
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role rdfs:label ?roleLabel .
-->
<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;
CONSTRUCT
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?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 a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel .
?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
WHERE
{
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
}
UNION
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role core:hideFromDisplay ?hideThis .
}
UNION
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity rdfs:label ?activityLabel .
}
UNION
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Contract .
?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity)) .
}
UNION
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Contract .
?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Contract .
?activity core:relates ?adminedByRole .
?adminedByRole &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity)) .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:assignedBy ?awardedBy .
?awardedBy a foaf:Organization .
?awardedBy rdfs:label ?awardedByLabel .
}
UNION
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:relates ?adminedByRole .
@ -163,64 +80,63 @@
?adminedBy a foaf:Organization .
?adminedBy rdfs:label ?adminedByLabel .
}
UNION
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole .
}
UNION
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole .
}
UNION
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
?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:PrincipalInvestigatorRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?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 core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
UNION
{
?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Contract .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant .
}
</query-construct>
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity a core:Grant .
?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:PrincipalInvestigatorRole .</precise-subquery>
?role core:hideFromDisplay ?hideThis .
}
} ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
</query-select>
<template>propStatement-hasInvestigatorRole.ftl</template>
</list-view-config>

View file

@ -19,97 +19,39 @@
?dateTimeStart
?dateTimeEnd
WHERE {
?subject ?property ?role .
?role a core:ReviewerRole .
?subject ?property ?role
OPTIONAL { ?role core:roleContributesTo ?activity .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:ReviewerRole .</precise-subquery>
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName .
}
OPTIONAL { ?role core:roleContributesTo ?activity .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:ReviewerRole .</precise-subquery>
?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?subclassLabel
?subclass rdfs:label ?subclassLabel .
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:ReviewerRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a core:ReviewerRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
} ORDER BY <collated> ?subclass </collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:ReviewerRole .
?role vitro:mostSpecificType ?roleSubclass .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName .
?activity vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?subclassLabel
} WHERE {
{
?subject ?property ?role .
?role a core:ReviewerRole .
} UNION {
?subject ?property ?role .
?role a core:ReviewerRole .
?role vitro:mostSpecificType ?roleSubclass
} UNION {
?subject ?property ?role .
?role a core:ReviewerRole .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName .
} UNION {
?subject ?property ?role .
?role a core:ReviewerRole .
?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?subclassLabel
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:ReviewerRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?role .
?role a core:ReviewerRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a core:ReviewerRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?role .
?role a core:ReviewerRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-hasEditReviewRole.ftl</template>
</list-view-config>

View file

@ -23,150 +23,46 @@
?subject ?property ?role .
?role a ?objectType .
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel .
<collated>
?activity vitro:mostSpecificType ?subclass
?activity vitro:mostSpecificType ?subclass .
</collated>
}
OPTIONAL { ?role core:relates ?activity .
?activity rdfs:label ?activityLabel
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityLabel .
<collated>
?activity vitro:mostSpecificType ?subclass
?activity vitro:mostSpecificType ?subclass .
</collated>
}
OPTIONAL { ?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityLabel
<collated>
?activity vitro:mostSpecificType ?subclass
</collated>
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role rdfs:label ?roleLabel .
}
OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?role .
?role core:relates ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?role core:relates ?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 core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?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 &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?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 rdfs:label ?roleLabel .
?activity rdfs:label ?activityName
} WHERE {
{
?subject ?property ?role .
?role a ?objectType .
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role rdfs:label ?roleLabel .
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role core:relates ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?role .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?role .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-hasRole.ftl</template>
</list-view-config>

View file

@ -17,30 +17,60 @@
?author ?authorName
WHERE {
?subject ?property ?authorship .
OPTIONAL { ?authorship core:rank ?rank }
OPTIONAL { ?authorship core:relates ?author .
?authorship a core:Authorship .
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship .</precise-subquery>
?authorship core:rank ?rank .
}
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship .</precise-subquery>
?authorship core:relates ?author .
?author a foaf:Agent .
?author rdfs:label ?authorName .
OPTIONAL { ?authorship core:relates ?author .
?author a foaf:Agent .
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?author .
?author a foaf:Agent .</precise-subquery>
?author vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Agent .
}
}
OPTIONAL { ?authorship core:relates ?author .
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship .</precise-subquery>
?authorship core:relates ?author .
?author a vcard:Kind .
?author vcard:hasName ?vName .
?vName vcard:familyName ?lastName .
OPTIONAL { ?vName vcard:givenName ?firstName . }
OPTIONAL { ?vName core:middleName ?middleName . }
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?author .
?author a vcard:Kind .
?author vcard:hasName ?vName .</precise-subquery>
?vName vcard:givenName ?firstName .
}
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?author .
?author a vcard:Kind .
?author vcard:hasName ?vName .</precise-subquery>
?vName core:middleName ?middleName .
}
bind ( COALESCE(?firstName, "") As ?firstName1) .
bind ( COALESCE(?middleName, "") As ?middleName1) .
bind ( COALESCE(?lastName, "") As ?lastName1) .
bind (concat(str(?lastName1 + ", "),str(?firstName1 + " "),str(?middleName1)) as ?authorName) .
OPTIONAL { ?authorship core:relates ?author .
?author a vcard:Kind .
OPTIONAL {
<precise-subquery>?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?author .
?author a vcard:Kind .</precise-subquery>
?author vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf vcard:Kind .
}
@ -51,67 +81,5 @@
} ORDER BY <collated> ?subclass </collated> ?rank (fn:lower-case(?authorName))
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&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;
CONSTRUCT {
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:rank ?rank .
?authorship core:relates ?authorAgent .
?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 ?vNameProperty ?vNameValue .
} 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 ?authorAgent .
?authorAgent a foaf:Agent .
?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 ?vNameProperty ?vNameValue .
}
}
</query-construct>
<template>propStatement-informationResourceInAuthorship.ftl</template>
</list-view-config>

View file

@ -16,16 +16,27 @@
?person ?personName
WHERE {
?subject ?property ?editorship .
OPTIONAL { ?editorship core:rank ?rank }
OPTIONAL { ?editorship core:relates ?person .
?editorship a core:Editorship .
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship .</precise-subquery>
?editorship core:rank ?rank .
}
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship .</precise-subquery>
?editorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName
?person rdfs:label ?personName .
}
<collated>
OPTIONAL { ?editorship core:relates ?person .
OPTIONAL {
<precise-subquery>?subject ?property ?editorship .
?editorship a core:Editorship .</precise-subquery>
?editorship core:relates ?person .
?person a foaf:Person .
?person vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Person
?subclass rdfs:subClassOf foaf:Person .
}
</collated>
<critical-data-required>
@ -34,44 +45,5 @@
} ORDER BY <collated> ?subclass </collated> ?rank (fn:lower-case(?personName))
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:rank ?rank .
?editorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName .
?person vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf foaf:Person
} WHERE {
{
?subject ?property ?editorship .
?editorship a core:Editorship
} UNION {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:rank ?rank
} UNION {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName
} UNION {
?subject ?property ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName .
?person vitro:mostSpecificType ?subclass .
}
}
</query-construct>
<template>propStatement-informationResourceInEditorship.ftl</template>
</list-view-config>

View file

@ -27,122 +27,42 @@
?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .
LET (?issuedCredentialLocal := afn:localname(?issuedCredential))
OPTIONAL {?issuedCredential rdfs:label ?issuedCredentialLabel }
OPTIONAL { ?issuedCredential core:relates ?credential .
OPTIONAL {
<precise-subquery>?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .</precise-subquery>
?issuedCredential rdfs:label ?issuedCredentialLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .</precise-subquery>
?issuedCredential core:relates ?credential .
?credential a core:Credential .
?credential core:relatedBy ?issuedCredential .
?credential rdfs:label ?credentialLabel .
LET (?credentialLocal := afn:localname(?credential))
}
OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .</precise-subquery>
?issuedCredential core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .</precise-subquery>
?issuedCredential core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
OPTIONAL { ?issuedCredential core:dateIssued ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
OPTIONAL {
<precise-subquery>?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .</precise-subquery>
?issuedCredential core:dateIssued ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
}
} ORDER BY DESC(?dateTime) DESC(?dateTimeEnd)
</query-select>
<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 ?issuedCredential .
?issuedCredential a core:IssuedCredential .
?issuedCredential rdfs:label ?issuedCredentialLabel .
?issuedCredential core:relates ?credential .
?credential a core:Credential .
?credential core:relatedBy ?issuedCredential .
?credential rdfs:label ?credentialLabel .
} WHERE {
{
?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .
} UNION {
?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .
?issuedCredential rdfs:label ?issuedCredentialLabel .
} UNION {
?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .
?issuedCredential core:relates ?credential .
?credential a core:Credential .
?credential core:relatedBy ?issuedCredential
} UNION {
?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .
?issuedCredential core:relates ?credential .
?credential a core:Credential .
?credential core:relatedBy ?issuedCredential .
?credential rdfs:label ?credentialLabel
} UNION {
?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .
?issuedCredential core:relates ?credential .
?credential a core:Credential .
?credential core:relatedBy ?issuedCredential .
?credential rdfs:label ?credentialLabel .
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .
?issuedCredential core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .
?issuedCredential 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 ?issuedCredential .
?issuedCredential a core:IssuedCredential .
?issuedCredential core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .
?issuedCredential core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</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 ?issuedCredential .
?issuedCredential a core:IssuedCredential .
?issuedCredential core:dateIssued ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
} WHERE {
?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .
?issuedCredential core:dateIssued ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
}
</query-construct>
<template>propStatement-issuedCredential.ftl</template>
</list-view-config>

View file

@ -16,36 +16,36 @@
WHERE {
?subject ?property ?vcard .
?vcard vcard:hasAddress ?address
OPTIONAL { ?address vcard:streetAddress ?street }
OPTIONAL { ?address vcard:locality ?locality }
OPTIONAL { ?address vcard:region ?region }
OPTIONAL { ?address vcard:postalCode ?postalCode }
OPTIONAL { ?address vcard:country ?country }
?vcard vcard:hasAddress ?address .
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasAddress ?address .</precise-subquery>
?address vcard:streetAddress ?street .
}
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasAddress ?address .</precise-subquery>
?address vcard:locality ?locality .
}
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasAddress ?address .</precise-subquery>
?address vcard:region ?region .
}
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasAddress ?address .</precise-subquery>
?address vcard:postalCode ?postalCode .
}
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasAddress ?address .</precise-subquery>
?address vcard:country ?country .
}
} ORDER BY ?country ?region ?street
</query-select>
<query-construct>
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT {
?subject ?property ?vcard .
?vcard vcard:hasAddress ?address .
?address ?addressProperty ?addressValue
} WHERE {
{
?subject ?property ?vcard
} UNION {
?subject ?property ?vcard .
?vcard vcard:hasAddress ?address
} UNION {
?subject ?property ?vcard .
?vcard vcard:hasAddress ?address .
?address ?addressProperty ?addressValue
}
}
</query-construct>
<template>propStatement-mailingAddress.ftl</template>
<postprocessor>edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual.MaintainDuplicatesObjectPropertyDataPostProcessor</postprocessor>
</list-view-config>

View file

@ -9,18 +9,9 @@
<query-select>
SELECT ?value
WHERE {
?subject ?property ?value
?subject ?property ?value .
}
</query-select>
<query-construct>
CONSTRUCT {
?subject ?property ?value
} WHERE {
?subject ?property ?value
}
</query-construct>
<template>propStatement-orcidId.ftl</template>
</list-view-config>

View file

@ -14,42 +14,18 @@
?grant
?grantLabel
WHERE {
WHERE
{
?subject ?property ?administratorRole .
?administratorRole a core:AdministratorRole .
OPTIONAL { ?administratorRole core:relatedBy ?grant .
?grant core:relates ?administratorRole .
OPTIONAL {
<precise-subquery>?subject ?property ?administratorRole .
?administratorRole a core:AdministratorRole .</precise-subquery>
?administratorRole core:relatedBy ?grant .
?grant rdfs:label ?grantLabel .
}
} ORDER BY ?grantLabel
</query-select>
<query-construct>
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
CONSTRUCT {
?subject ?property ?administratorRole .
?administratorRole a core:AdministratorRole .
?administratorRole core:relatedBy ?grant .
?grant core:relates ?administratorRole .
?grant rdfs:label ?grantLabel .
} WHERE {
{
?subject ?property ?administratorRole .
?administratorRole a core:AdministratorRole .
} UNION {
?subject ?property ?administratorRole .
?administratorRole a core:AdministratorRole .
?administratorRole core:relatedBy ?grant .
?grant a core:Grant .
?grant core:relates ?administratorRole .
?grant rdfs:label ?grantLabel .
}
}
</query-construct>
<template>propStatement-organizationAdministersGrant.ftl</template>
</list-view-config>

View file

@ -15,34 +15,18 @@
WHERE {
?subject ?property ?grantOrContract .
OPTIONAL { ?grantOrContract rdfs:label ?label .
OPTIONAL {
<precise-subquery>?subject ?property ?grantOrContract .</precise-subquery>
?grantOrContract a core:Grant .
?grantOrContract rdfs:label ?label .
}
OPTIONAL {
<precise-subquery>?subject ?property ?grantOrContract .</precise-subquery>
?grantOrContract a core:Contract .
?grantOrContract rdfs:label ?label .
}
} ORDER BY ?label
</query-select>
<query-construct>
PREFIX foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
CONSTRUCT {
?subject ?property ?grantOrContract .
?grantOrContract rdfs:label ?label .
} WHERE {
{
?subject ?property ?grantOrContract .
} UNION {
?subject ?property ?grantOrContract .
?grantOrContract a core:Grant .
?grantOrContract rdfs:label ?label .
} UNION {
?subject ?property ?grantOrContract .
?grantOrContract a core:Contract .
?grantOrContract rdfs:label ?label .
}
}
</query-construct>
<template>propStatement-organizationAwardsGrant.ftl</template>
</list-view-config>

View file

@ -19,9 +19,12 @@
?hideThis
WHERE
{
?subject ?property ?position
OPTIONAL
{
?subject ?property ?position .
?position a core:Position .
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName .
@ -29,26 +32,42 @@
<collated>
OPTIONAL
{
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position vitro:mostSpecificType ?subclass .
OPTIONAL
{
<precise-subquery>?subject ?property ?position .
?position a core:Position .
?position vitro:mostSpecificType ?subclass .</precise-subquery>
?subclass vitro:displayRankAnnot ?displayRank .
}
}
</collated>
OPTIONAL { ?position rdfs:label ?positionTitle }
OPTIONAL { ?position core:hideFromDisplay ?hideThis }
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position rdfs:label ?positionTitle .
}
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position core:hideFromDisplay ?hideThis .
}
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL
{
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position core:dateTimeInterval ?dateTimeInterval .
?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
FILTER ( !bound(?dateTimeEnd) || substr(str(?dateTimeEnd), 1, 4) &gt;= substr(str(now()), 1, 4) )
@ -59,91 +78,5 @@
} ORDER BY <collated> ?subclass </collated> (fn:lower-case(?personName))
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX 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 ?position .
?position a core:Position .
?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 .
?person a foaf:Person .
?person rdfs:label ?personName .
}
WHERE
{
{
?subject ?property ?position .
?position a core:Position .
}
UNION
{
?subject ?property ?position .
?position a core:Position .
?position core:hideFromDisplay ?hideThis .
}
UNION
{
?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 .
}
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 .
?position core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName .
}
}
</query-construct>
<template>propStatement-organizationForPosition.ftl</template>
</list-view-config>

View file

@ -20,185 +20,61 @@
?dateTimeStart ?dateTimeEnd
WHERE {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess
OPTIONAL { ?edTraining vitro:mostSpecificType ?subclass . }
OPTIONAL { ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?edTraining a core:EducationalProcess .
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining vitro:mostSpecificType ?subclass .
}
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree .
?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 {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree .
?degree a core:AcademicDegree .
?degree core:abbreviation ?degreeAbbr
?degree core:abbreviation ?degreeAbbr .
}
OPTIONAL { ?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?person .
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?person .
?person a foaf:Person .
?person rdfs:label ?personName
?person rdfs:label ?personName .
}
OPTIONAL { ?edTraining core:majorField ?majorField }
OPTIONAL { ?edTraining core:supplementalInformation ?info }
OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining core:majorField ?majorField .
}
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining core:supplementalInformation ?info .
}
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .</precise-subquery>
?edTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
} ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart)
</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 {
?edTraining vitro:mostSpecificType ?subclass
} WHERE {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining vitro:mostSpecificType ?subclass .
}
</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 {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining ?edTrainingProp ?edTrainingValue .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0002234&gt; ?awardedDegree .
?awardedDegree core:relates ?degree .
?edTraining core:dateTimeInterval ?dateTimeInterval
} WHERE {
{
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess
}
UNION {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining ?edTrainingProp ?edTrainingValue
}
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 .
?edTraining a core:EducationalProcess .
?edTraining core:majorField ?majorField .
?edTraining core:supplementalInformation ?info .
?edTraining &lt;http://purl.obolibrary.org/obo/RO_0000057&gt; ?person .
?person a foaf:Person .
?person rdfs:label ?personName
} WHERE {
{
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess
}
UNION {
?subject ?property ?edTraining .
?edTraining a core:EducationalProcess .
?edTraining core:majorField ?majorField .
}
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_0000057&gt; ?person .
?person a foaf:Person .
?person rdfs:label ?personName
}
}
</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 rdfs:label ?degreeName .
?degree core:abbreviation ?degreeAbbr
} WHERE {
{
?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 rdfs:label ?degreeName
} 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>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?edTraining .
?edTraining core:dateTimeInterval ?dateTimeInterval .
?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 core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?edTraining .
?edTraining core:dateTimeInterval ?dateTimeInterval .
?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-organizationForTraining.ftl</template>
</list-view-config>

View file

@ -7,6 +7,7 @@
<query-select>
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;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
@ -22,54 +23,67 @@
WHERE
{
?subject ?property ?position .
OPTIONAL
{
?position a core:Position .
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position core:relates ?org .
?org a foaf:Organization .
?org rdfs:label ?orgName .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position core:relates ?org .
?org a foaf:Organization .
?org rdfs:label ?orgName .
?org obo:BFO_0000050 ?middleOrg .
?middleOrg rdfs:label ?middleOrgName .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position core:relates ?org .
?org a foaf:Organization .
?org rdfs:label ?orgName .
?org obo:BFO_0000050 ?middleOrg .
?middleOrg obo:BFO_0000050 ?outerOrg .
?outerOrg rdfs:label ?outerOrgName .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position rdfs:label ?positionTitle .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position core:hrJobTitle ?hrJobTitle .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position core:rank ?rank .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
<collated>
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?position .
?position a core:Position .</precise-subquery>
?position vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:Position .
}
@ -80,108 +94,5 @@
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) ?rank
</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 foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT
{
?subject ?property ?position .
?position rdfs:label ?positionTitle .
?position vitro:mostSpecificType ?subclass .
?position core:hrJobTitle ?hrJobTitle .
?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 .
?org rdfs:label ?orgName .
?org obo:BFO_0000050 ?middleOrg .
?middleOrg rdfs:label ?middleOrgName .
?middleOrg obo:BFO_0000050 ?outerOrg .
?outerOrg rdfs:label ?outerOrgName .
}
WHERE
{
{
?subject ?property ?position .
?position a core:Position .
}
UNION
{
?subject ?property ?position .
?position a core:Position .
?position rdfs:label ?positionTitle .
}
UNION
{
?subject ?property ?position .
?position a core:Position .
?position core:rank ?rank .
}
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 .
?position a core:Position .
?position core:relates ?org .
?org a foaf:Organization .
?org rdfs:label ?orgName .
}
UNION
{
?subject ?property ?position .
?position a core:Position .
?position core:relates ?org .
?org a foaf:Organization .
?org obo:BFO_0000050 ?middleOrg .
?middleOrg rdfs:label ?middleOrgName .
}
UNION
{
?subject ?property ?position .
?position a core:Position .
?position core:relates ?org .
?org a foaf:Organization .
?org obo:BFO_0000050 ?middleOrg .
?middleOrg obo:BFO_0000050 ?outerOrg .
?outerOrg rdfs:label ?outerOrgName .
}
}
</query-construct>
<template>propStatement-personInPosition.ftl</template>
</list-view-config>

View file

@ -13,31 +13,11 @@
WHERE {
?subject ?property ?vcard .
?vcard vcard:hasTitle ?title .
?title vcard:title ?preferredTitle
?title vcard:title ?preferredTitle .
}
</query-select>
<query-construct>
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT {
?subject ?property ?vcard .
?vcard vcard:hasTitle ?title .
?title ?titleProperty ?titleValue
} WHERE {
{
?subject ?property ?vcard
} UNION {
?subject ?property ?vcard .
?vcard vcard:hasTitle ?title
} UNION {
?subject ?property ?vcard .
?vcard vcard:hasTitle ?title .
?title ?titleProperty ?titleValue
}
}
</query-construct>
<template>propStatement-preferredTitle.ftl</template>
<postprocessor>edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual.MaintainDuplicatesObjectPropertyDataPostProcessor</postprocessor>
</list-view-config>

View file

@ -13,26 +13,11 @@
?subject ?property ?vcard .
?vcard vcard:hasEmail ?email .
?email a vcard:Work .
?email vcard:email ?emailAddress
?email vcard:email ?emailAddress .
}
</query-select>
<query-construct>
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT {
?subject ?property ?vcard .
?vcard vcard:hasEmail ?email .
?email a vcard:Work .
?email ?emailProperty ?emailValue
} WHERE {
?subject ?property ?vcard .
?vcard vcard:hasEmail ?email .
?email a vcard:Work .
?email ?emailProperty ?emailValue
}
</query-construct>
<template>propStatement-emailAddress.ftl</template>
<postprocessor>edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual.MaintainDuplicatesObjectPropertyDataPostProcessor</postprocessor>
</list-view-config>

View file

@ -24,15 +24,36 @@
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
OPTIONAL { ?infoResource bibo:volume ?volume }
OPTIONAL { ?infoResource bibo:pageStart ?startPage }
OPTIONAL { ?infoResource bibo:pageEnd ?endPage }
OPTIONAL { ?infoResource core:placeOfPublication ?locale }
OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass }
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:volume ?volume .
}
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:pageStart ?startPage .
}
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:pageEnd ?endPage .
}
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:placeOfPublication ?locale .
}
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource vitro:mostSpecificType ?subclass .
}
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime
?dateTimeValue core:dateTime ?dateTime .
}
<critical-data-required>
@ -41,99 +62,5 @@
} ORDER BY ?subclass DESC(?dateTime) ?infoResourceName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
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 ?infoResource .
?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:pageStart ?startPage .
?infoResource bibo:pageEnd ?endPage .
?infoResource core:placeOfPublication ?locale .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor .
}
WHERE
{
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?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 .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:volume ?volume .
}
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageStart ?startPage .
}
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageEnd ?endPage .
}
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:placeOfPublication ?locale .
}
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 bibo:Book .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor
}
UNION
{
?subject ?property ?infoResource .
?infoResource a bibo:BookSection .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor
}
}
</query-construct>
<template>propStatement-publicationVenueFor.ftl</template>
</list-view-config>

View file

@ -27,28 +27,52 @@
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource rdfs:label ?infoResourceName .
OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass }
OPTIONAL { ?infoResource bibo:volume ?volume }
OPTIONAL { ?infoResource bibo:pageStart ?startPage }
OPTIONAL { ?infoResource bibo:pageEnd ?endPage }
OPTIONAL { ?infoResource core:placeOfPublication ?locale }
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource vitro:mostSpecificType ?subclass .
}
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:volume ?volume .
}
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:pageStart ?startPage .
}
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:pageEnd ?endPage .
}
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:placeOfPublication ?locale .
}
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .</precise-subquery>
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
}
@ -59,140 +83,5 @@
} ORDER BY ?subclass DESC(?dateTime) ?infoResourceName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX bibo: &lt;http://purl.org/ontology/bibo/&gt;
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 ?infoResource .
?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:pageStart ?startPage .
?infoResource bibo:pageEnd ?endPage .
?infoResource core:placeOfPublication ?locale .
?infoResource core:dateTimeValue ?dateTimeValue .
?dateTimeValue core:dateTime ?dateTime .
?infoResource core:hasPublicationVenue ?publishedIn .
?publishedIn rdfs:label ?journal .
?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn .
?infoResource &lt;http://purl.obolibrary.org/obo/BFO_0000050&gt; ?partOfObj .
?partOfObj rdfs:label ?partOf .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor .
}
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 .
?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 bibo:volume ?volume .
}
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageStart ?startPage .
}
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:pageEnd ?endPage .
}
UNION
{
?subject ?property ?infoResource .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource core:placeOfPublication ?locale .
}
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 .
?infoResource a &lt;http://purl.obolibrary.org/obo/IAO_0000030&gt; .
?infoResource bibo:reproducedIn ?appearsInObj .
?appearsInObj rdfs:label ?appearsIn .
}
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 .
?infoResource a bibo:Book .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor .
}
UNION
{
?subject ?property ?infoResource .
?infoResource a bibo:BookSection .
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
?editorObj rdfs:label ?editor .
}
}
</query-construct>
<template>propStatement-publisherOf.ftl</template>
</list-view-config>

View file

@ -26,24 +26,27 @@
?subject ?property ?object .
LET (?localName := afn:localname(?object))
OPTIONAL { ?object rdfs:label ?label }
OPTIONAL {
<precise-subquery>?subject ?property ?object .</precise-subquery>
?object rdfs:label ?label .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?object .</precise-subquery>
# Get mostSpecificType only for Persons
?object vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?type .
# Display only a mostSpecificType that belongs to a classgroup.
#?subclass vitro:inClassGroup ?classGroup .
#?classGroup a vitro:ClassGroup
#?classGroup a vitro:ClassGroup .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?object .</precise-subquery>
?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title
?titleObj vcard:title ?title .
}
<collated>
@ -56,54 +59,5 @@
} ORDER BY <collated> ?subclass </collated> ASC( ?label ) ASC( ?localName ) ?type
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT
{
?subject ?property ?object .
?object rdfs:label ?label .
?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 .
}
UNION
{
?subject ?property ?object .
?object rdfs:label ?label .
}
UNION
{
?subject ?property ?object .
?object vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?type .
# Display only a mostSpecificType that belongs to a classgroup.
?subclass vitro:inClassGroup ?classGroup .
?classGroup a vitro:ClassGroup .
}
UNION
{
?subject ?property ?object .
?object obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title .
}
}
</query-construct>
<template>propStatement-default.ftl</template>
</list-view-config>

View file

@ -24,44 +24,88 @@
WHERE {
?subject ?property ?role .
?role a ?objectType
?role a ?objectType .
OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role rdfs:label ?roleLabel .
}
# We need ?subclass in the uncollated query to get the roleTypeLabel
# for roles that have no label.
OPTIONAL { ?role vitro:mostSpecificType ?subclass . }
OPTIONAL { ?role vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?roleTypeLabel
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role vitro:mostSpecificType ?subclass .
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole }
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole rdfs:label ?indivLabel
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?roleTypeLabel .
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole rdfs:label ?indivLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole a vcard:Kind .
?indivInRole vcard:hasName ?vName .
?vName vcard:familyName ?lastName .
OPTIONAL { ?vName vcard:givenName ?firstName . }
OPTIONAL { ?vName core:middleName ?middleName . }
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole a vcard:Kind .
?indivInRole vcard:hasName ?vName .</precise-subquery>
?vName vcard:givenName ?firstName .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole a vcard:Kind .
?indivInRole vcard:hasName ?vName .</precise-subquery>
?vName core:middleName ?middleName .
}
bind ( COALESCE(?firstName, "") As ?firstName1) .
bind ( COALESCE(?middleName, "") As ?middleName1) .
bind ( COALESCE(?lastName, "") As ?lastName1) .
bind (concat(str(?lastName1 + ", "),str(?firstName1 + " "),str(?middleName1)) as ?indivLabel) .
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .</precise-subquery>
?indivInRole a vcard:Kind .
?indivInRole vitro:mostSpecificType ?vSubclass .
?vSubclass rdfs:subClassOf vcard:Kind
?vSubclass rdfs:subClassOf vcard:Kind .
}
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
<critical-data-required>
FILTER ( bound(?indivInRole) )
@ -69,154 +113,5 @@
} ORDER BY <collated>?subclass</collated> ?indivLabel ?roleLabel ?roleTypeLabel ?indivName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role rdfs:label ?roleLabel .
?role vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?roleTypeLabel .
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole rdfs:label ?indivLabel
} WHERE {
{
?subject ?property ?role .
?role a ?objectType
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role rdfs:label ?roleLabel
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role vitro:mostSpecificType ?subclass
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?roleTypeLabel
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole rdfs:label ?indivLabel
}
}
</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 vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role rdfs:label ?roleLabel .
?role vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?roleTypeLabel .
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole a vcard:Kind .
?indivInRole vcard:hasName ?vName .
?vName vcard:familyName ?lastName .
?vName vcard:givenName ?firstName .
?vName core:middleName ?middleName .
?indivInRole vitro:mostSpecificType ?vSubclass .
?vSubclass rdfs:subClassOf vcard:Kind
} WHERE {
{
?subject ?property ?role .
?role a ?objectType
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role rdfs:label ?roleLabel
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role vitro:mostSpecificType ?subclass
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role vitro:mostSpecificType ?subclass .
?subclass rdfs:label ?roleTypeLabel
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole a vcard:Kind .
?indivInRole vcard:hasName ?vName .
?vName vcard:familyName ?lastName .
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole a vcard:Kind .
?indivInRole vcard:hasName ?vName .
?vName vcard:familyName ?lastName .
?vName vcard:givenName ?firstName .
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole a vcard:Kind .
?indivInRole vcard:hasName ?vName .
?vName vcard:familyName ?lastName .
?vName vcard:givenName ?firstName .
?vName core:middleName ?middleName .
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/RO_0000052&gt; ?indivInRole .
?indivInRole a vcard:Kind .
?indivInRole vitro:mostSpecificType ?vSubclass .
?vSubclass rdfs:subClassOf vcard:Kind
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?role .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-relatedRole.ftl</template>
</list-view-config>

View file

@ -22,11 +22,11 @@
WHERE
{
?subject ?property ?role .
?role a core:ResearcherRole .
?role vitro:mostSpecificType ?roleSubclass .
?role vitro:mostSpecificType core:ResearcherRole .
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:ResearcherRole .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel .
@ -34,8 +34,9 @@
?activity vitro:mostSpecificType ?subclass .
</collated>
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:ResearcherRole .</precise-subquery>
?role core:relatedBy ?activity .
?activity rdfs:label ?activityLabel .
@ -43,119 +44,32 @@
?activity vitro:mostSpecificType ?subclass .
</collated>
}
OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL { ?role core:hideFromDisplay ?hideThis }
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:ResearcherRole .</precise-subquery>
?role rdfs:label ?roleLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:ResearcherRole .</precise-subquery>
?role core:hideFromDisplay ?hideThis .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:ResearcherRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL
{
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role vitro:mostSpecificType core:ResearcherRole .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
FILTER ( ?roleSubclass = core:ResearcherRole)
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT
{
?subject ?property ?role .
?role a core:ResearcherRole .
?role vitro:mostSpecificType ?roleSubclass .
?role rdfs:label ?roleLabel .
?role core:hideFromDisplay ?hideThis .
?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 .
?role a core:ResearcherRole .
}
UNION
{
?subject ?property ?role .
?role a core:ResearcherRole .
?role vitro:mostSpecificType ?roleSubclass .
}
UNION
{
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:hideFromDisplay ?hideThis .
}
UNION
{
?subject ?property ?role .
?role a core:ResearcherRole .
?role rdfs:label ?roleLabel .
}
UNION
{
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
UNION
{
?subject ?property ?role .
?role a core:ResearcherRole .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
UNION
{
?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 .
}
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>
<template>propStatement-hasRole.ftl</template>
</list-view-config>

View file

@ -25,25 +25,38 @@
?dateTimeEnd
WHERE {
?subject ?property ?person .
OPTIONAL { ?person core:relatedBy ?position .
?position a core:Position
}
OPTIONAL { ?person core:relatedBy ?position .
OPTIONAL {
<precise-subquery>?subject ?property ?person .</precise-subquery>
?person core:relatedBy ?position .
?position a core:Position .
?position rdfs:label ?posnLabel
}
OPTIONAL { ?person rdfs:label ?personName }
OPTIONAL { ?person obo:ARG_2000028 ?vcard .
OPTIONAL {
<precise-subquery>?subject ?property ?person .</precise-subquery>
?person core:relatedBy ?position .
?position a core:Position .
?position rdfs:label ?posnLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?person .</precise-subquery>
?person rdfs:label ?personName .
}
OPTIONAL {
<precise-subquery>?subject ?property ?person .</precise-subquery>
?person obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title
?titleObj vcard:title ?title .
}
OPTIONAL { ?person core:relatedBy ?position .
OPTIONAL {
<precise-subquery>?subject ?property ?person .</precise-subquery>
?person core:relatedBy ?position .
?position a core:Position .
?position core:relates ?org .
?org a foaf:Organization .
?org rdfs:label ?orgLabel
?org rdfs:label ?orgLabel .
}
OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?person .</precise-subquery>
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd .
FILTER ( ?dateTimeEnd &lt; now() )
@ -52,86 +65,5 @@
ORDER BY (fn:lower-case(?personName)) (bound(?dateTimeEnd)) desc(?dateTimeEnd)
</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 foaf: &lt;http://xmlns.com/foaf/0.1/&gt;
CONSTRUCT {
?subject ?property ?person .
?person core:relatedBy ?position .
?position a core:Position .
?position rdfs:label ?posnLabel .
?position core:relates ?org .
?org a foaf:Organization .
?org rdfs:label ?orgName .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?endDate .
?endDate core:dateTime ?endDateValue .
} WHERE {
{
?subject ?property ?person
} UNION {
?subject ?property ?person .
?person core:relatedBy ?position .
?position a core:Position .
} UNION {
?subject ?property ?person .
?person core:relatedBy ?position .
?position a core:Position .
?position rdfs:label ?posnLabel
} UNION {
?subject ?property ?person .
?person core:relatedBy ?position .
?position a core:Position .
?position core:relates ?org .
?org a foaf:Organization .
} UNION {
?subject ?property ?person .
?person core:relatedBy ?position .
?position a core:Position .
?position core:relates ?org .
?org a foaf:Organization .
?org rdfs:label ?orgName
} UNION {
?subject ?property ?person .
?person core:relatedBy ?position .
?position a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?endDate .
?endDate core:dateTime ?endDateValue
}
}
</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;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
PREFIX obo: &lt;http://purl.obolibrary.org/obo/&gt;
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT {
?subject ?property ?person .
?person rdfs:label ?personName .
?person obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title
} WHERE {
{
?subject ?property ?person
} UNION {
?subject ?property ?person .
?person rdfs:label ?personName
} UNION {
?subject ?property ?person .
?person obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title
}
}
</query-construct>
<template>propStatement-researchAreaOf.ftl</template>
</list-view-config>

View file

@ -26,137 +26,47 @@
?subject ?property ?role .
?role a ?objectType .
OPTIONAL { ?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityLabel
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityLabel .
<collated>
?activity vitro:mostSpecificType ?subclass
?activity vitro:mostSpecificType ?subclass .
</collated>
}
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel .
<collated>
?activity vitro:mostSpecificType ?subclass
?activity vitro:mostSpecificType ?subclass .
</collated>
}
OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role rdfs:label ?roleLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role core:roleContributesTo ?activity .
?activity vitro:mostSpecificType ?subclass
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?role .
?role rdfs:label ?roleLabel .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName .
} WHERE {
{
?subject ?property ?role .
?role a ?objectType .
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role rdfs:label ?roleLabel
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role core:relates ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-hasRole.ftl</template>
</list-view-config>

View file

@ -23,112 +23,47 @@
?subject ?property ?role .
?role a ?objectType .
OPTIONAL { ?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role rdfs:label ?roleLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityLabel .
<collated>
?activity vitro:mostSpecificType ?subclass
?activity vitro:mostSpecificType ?subclass .
</collated>
}
OPTIONAL { ?role rdfs:label ?roleLabel }
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityLabel .
<collated>
?activity vitro:mostSpecificType ?subclass .
</collated>
}
OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
}
OPTIONAL {
<precise-subquery>?subject ?property ?role .
?role a ?objectType .</precise-subquery>
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
?dateTimeEndValue core:dateTime ?dateTimeEnd .
}
} ORDER BY <collated>?subclass</collated> DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vitro: &lt;http://vitro.mannlib.cornell.edu/ns/vitro/0.7#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass .
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity vitro:mostSpecificType ?subclass
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
CONSTRUCT {
?subject ?property ?role .
?role rdfs:label ?roleLabel .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName
} WHERE {
{
?subject ?property ?role .
?role a ?objectType .
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role rdfs:label ?roleLabel .
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role core:relates ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role &lt;http://purl.obolibrary.org/obo/BFO_0000054&gt; ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
?role a ?objectType .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName
}
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart
}
</query-construct>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
CONSTRUCT {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?role .
?role a ?objectType .
?role core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeEndValue .
?dateTimeEndValue core:dateTime ?dateTimeEnd
}
</query-construct>
<template>propStatement-hasRole.ftl</template>
</list-view-config>

View file

@ -11,20 +11,11 @@
SELECT ?value
WHERE {
?subject ?property ?value
?subject ?property ?value .
FILTER isLiteral(?value)
} ORDER BY ?value
</query-select>
<query-construct>
CONSTRUCT {
?subject ?property ?value
} WHERE {
?subject ?property ?value
}
</query-construct>
<template>propStatement-scopusId.ftl</template>
</list-view-config>

View file

@ -12,24 +12,15 @@
WHERE {
?subject ?property ?vcard .
?vcard vcard:hasTelephone ?phone .
?phone vcard:telephone ?number
MINUS {?phone a vcard:Fax}
?phone vcard:telephone ?number .
MINUS {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasTelephone ?phone .</precise-subquery>
?phone a vcard:Fax .
}
}
</query-select>
<query-construct>
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT {
?subject ?property ?vcard .
?vcard vcard:hasTelephone ?phone .
?phone ?phoneProperty ?phoneValue
} WHERE {
?subject ?property ?vcard .
?vcard vcard:hasTelephone ?phone .
?phone ?phoneProperty ?phoneValue
}
</query-construct>
<template>propStatement-phoneFaxNumber.ftl</template>
<postprocessor>edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual.MaintainDuplicatesObjectPropertyDataPostProcessor</postprocessor>
</list-view-config>

View file

@ -16,12 +16,25 @@
(afn:localname(?link) AS ?linkName)
(group_concat(distinct ?linkLabel;separator="/") as ?label)
?url
?rank WHERE {
?rank
WHERE {
?subject ?property ?vcard .
?vcard vcard:hasURL ?link
OPTIONAL { ?link rdfs:label ?linkLabel }
OPTIONAL { ?link vcard:url ?url }
OPTIONAL { ?link core:rank ?rank }
?vcard vcard:hasURL ?link .
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasURL ?link .</precise-subquery>
?link rdfs:label ?linkLabel .
}
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasURL ?link .</precise-subquery>
?link vcard:url ?url .
}
OPTIONAL {
<precise-subquery>?subject ?property ?vcard .
?vcard vcard:hasURL ?link .</precise-subquery>
?link core:rank ?rank .
}
<critical-data-required>
FILTER ( bound(?link) )
</critical-data-required>
@ -29,36 +42,6 @@
ORDER BY ?rank ?linkLabel
</query-select>
<query-construct>
PREFIX core: &lt;http://vivoweb.org/ontology/core#&gt;
PREFIX rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;
PREFIX vcard: &lt;http://www.w3.org/2006/vcard/ns#&gt;
CONSTRUCT {
?subject ?property ?vcard .
?vcard vcard:hasURL ?link .
?link vcard:url ?url .
?link core:rank ?rank .
?link rdfs:label ?linkLabel
} WHERE {
{
?subject ?property ?vcard .
?vcard vcard:hasURL ?link
} UNION {
?subject ?property ?vcard .
?vcard vcard:hasURL ?link .
?link vcard:url ?url
} UNION {
?subject ?property ?vcard .
?vcard vcard:hasURL ?link .
?link core:rank ?rank
} UNION {
?subject ?property ?vcard .
?vcard vcard:hasURL ?link .
?link rdfs:label ?linkLabel
}
}
</query-construct>
<template>propStatement-webpage.ftl</template>
<postprocessor>edu.cornell.mannlib.vitro.webapp.web.templatemodels.individual.MaintainDuplicatesObjectPropertyDataPostProcessor</postprocessor>
</list-view-config>