diff --git a/productMods/config/listViewConfig-adviseeIn.xml b/productMods/config/listViewConfig-adviseeIn.xml index 72b07c2c..3a38a1f1 100644 --- a/productMods/config/listViewConfig-adviseeIn.xml +++ b/productMods/config/listViewConfig-adviseeIn.xml @@ -32,26 +32,26 @@ OPTIONAL { ?advisingRel rdfs:label ?advisingRelLabel } OPTIONAL { ?advisingRel core:relates ?advisor . ?advisor a foaf:Person . - OPTIONAL { ?advisor rdfs:label ?advisorLabel } + ?advisor rdfs:label ?advisorLabel } OPTIONAL { ?advisingRel core:degreeCandidacy ?degree . ?degree rdfs:label ?degreeLabel . - OPTIONAL { ?degree core:abbreviation ?degreeAbbr } + } + OPTIONAL { ?advisingRel core:degreeCandidacy ?degree . + ?degree core:abbreviation ?degreeAbbr . } OPTIONAL { ?advisingRel vitro:mostSpecificType ?subclass . ?subclass rdfs:subClassOf core:AdvisingRelationship } - OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart - } + OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart } - OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd - } + OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd } } ORDER BY ?subclass DESC(?dateTimeEnd) diff --git a/productMods/config/listViewConfig-advisorIn.xml b/productMods/config/listViewConfig-advisorIn.xml index 0182d6ea..25146b7a 100644 --- a/productMods/config/listViewConfig-advisorIn.xml +++ b/productMods/config/listViewConfig-advisorIn.xml @@ -32,26 +32,26 @@ OPTIONAL { ?advisingRel rdfs:label ?advisingRelLabel } OPTIONAL { ?advisingRel core:relates ?advisee . ?advisee a foaf:Person . - OPTIONAL { ?advisee rdfs:label ?adviseeLabel } + ?advisee rdfs:label ?adviseeLabel } OPTIONAL { ?advisingRel core:degreeCandidacy ?degree . ?degree rdfs:label ?degreeLabel . - OPTIONAL { ?degree core:abbreviation ?degreeAbbr } + } + OPTIONAL { ?advisingRel core:degreeCandidacy ?degree . + ?degree core:abbreviation ?degreeAbbr } OPTIONAL { ?advisingRel vitro:mostSpecificType ?subclass . ?subclass rdfs:subClassOf core:AdvisingRelationship } - OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart - } + OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart } - OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd - } + OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd } } ORDER BY ?subclass DESC(?dateTimeEnd) diff --git a/productMods/config/listViewConfig-awardOrHonor.xml b/productMods/config/listViewConfig-awardOrHonor.xml index 149df272..4dbb907d 100644 --- a/productMods/config/listViewConfig-awardOrHonor.xml +++ b/productMods/config/listViewConfig-awardOrHonor.xml @@ -35,18 +35,16 @@ OPTIONAL { ?awardReceipt core:assignedBy ?assignedBy . ?assignedBy rdfs:label ?assignedByLabel } - OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart - } + OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart } - OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd - } + OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd } - OPTIONAL { ?awardReceipt core:dateTimeValue ?dateTimeValue - OPTIONAL { ?dateTimeValue core:dateTime ?dateTime } + OPTIONAL { ?awardReceipt core:dateTimeValue ?dateTimeValue . + ?dateTimeValue core:dateTime ?dateTime } } ORDER BY DESC(?dateTime) DESC(?dateTimeEnd) diff --git a/productMods/config/listViewConfig-educationalTraining.xml b/productMods/config/listViewConfig-educationalTraining.xml index 863b44bc..97e70fca 100644 --- a/productMods/config/listViewConfig-educationalTraining.xml +++ b/productMods/config/listViewConfig-educationalTraining.xml @@ -23,10 +23,14 @@ OPTIONAL { ?edTraining vitro:mostSpecificType ?subclass . } OPTIONAL { ?edTraining <http://purl.obolibrary.org/obo/RO_0002234> ?awardedDegree . ?awardedDegree core:relates ?degree . - ?degree a core:AcademicDegree - OPTIONAL { ?degree rdfs:label ?degreeName } - OPTIONAL { ?degree core:abbreviation ?degreeAbbr } - } + ?degree a core:AcademicDegree . + ?degree rdfs:label ?degreeName + } + OPTIONAL { ?edTraining <http://purl.obolibrary.org/obo/RO_0002234> ?awardedDegree . + ?awardedDegree core:relates ?degree . + ?degree a core:AcademicDegree . + ?degree core:abbreviation ?degreeAbbr + } OPTIONAL { ?edTraining <http://purl.obolibrary.org/obo/RO_0000057> ?org . ?org a foaf:Organization . ?org rdfs:label ?orgName @@ -34,13 +38,13 @@ OPTIONAL { ?edTraining core:majorField ?majorField } OPTIONAL { ?edTraining core:departmentOrSchool ?deptOrSchool } OPTIONAL { ?edTraining core:supplementalInformation ?info } - OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart - } - OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd - } + OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd } } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) diff --git a/productMods/config/listViewConfig-hasClinicalActivity.xml b/productMods/config/listViewConfig-hasClinicalActivity.xml new file mode 100644 index 00000000..4ae2e97a --- /dev/null +++ b/productMods/config/listViewConfig-hasClinicalActivity.xml @@ -0,0 +1,159 @@ + + + + + + + + PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#> + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> + + SELECT DISTINCT ?subclass + # send the property to the template, since this view supports multiple role properties + ?property + ?role + ?roleLabel + ?activity ?activityName + ?activityLabel + ?dateTimeStart ?dateTimeEnd + ?hideThis + ?objectType + WHERE { + ?subject ?property ?role . + ?role a core:ClinicalRole . + + OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity rdfs:label ?activityLabel + + + ?activity vitro:mostSpecificType ?subclass + + } + OPTIONAL { ?role core:roleContributesTo ?activity . + ?activity rdfs:label ?activityLabel + + + ?activity vitro:mostSpecificType ?subclass + + } + OPTIONAL { ?role rdfs:label ?roleLabel } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd + } + } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> + + CONSTRUCT { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role core:roleContributesTo ?activity . + ?activity vitro:mostSpecificType ?subclass . + } WHERE { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role core:roleContributesTo ?activity . + ?activity vitro:mostSpecificType ?subclass + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> + + CONSTRUCT { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity vitro:mostSpecificType ?subclass . + } WHERE { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity vitro:mostSpecificType ?subclass + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role ?roleProperty ?roleValue . + ?activity rdfs:label ?activityName + } WHERE { + { + ?subject ?property ?role . + ?role a core:ClinicalRole . + } UNION { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role ?roleProperty ?roleValue + } UNION { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role core:relates ?activity . + ?activity rdfs:label ?activityName + } UNION { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity rdfs:label ?activityName + } UNION { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role core:roleContributesTo ?activity . + ?activity rdfs:label ?activityName + } + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } WHERE { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd + } WHERE { + ?subject ?property ?role . + ?role a core:ClinicalRole . + ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd + } + + + + diff --git a/productMods/config/listViewConfig-hasCoPrincipalInvestigatorRole.xml b/productMods/config/listViewConfig-hasCoPrincipalInvestigatorRole.xml new file mode 100644 index 00000000..fa6e2804 --- /dev/null +++ b/productMods/config/listViewConfig-hasCoPrincipalInvestigatorRole.xml @@ -0,0 +1,188 @@ + + + + + + + + PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#> + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> + + SELECT DISTINCT + ?role + ?activity ?activityName + ?activityLabel + ?awardedBy + ?adminedBy + ?awardedByLabel + ?adminedByLabel + ?dateTimeStartRole ?dateTimeEndRole + ?dateTimeStartGrant ?dateTimeEndGrant + ?hideThis + WHERE { + + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity rdfs:label ?activityLabel . + LET (?activityName := afn:localname(?activity)) + } + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:grantAwardedBy ?awardedBy . + ?awardedBy rdfs:label ?awardedByLabel + } + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:administeredBy ?adminedBy . + ?adminedBy rdfs:label ?adminedByLabel + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:start ?dateTimeStartValueRole . + ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:end ?dateTimeEndValueRole . + ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole + } + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . + ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . + ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant + } + OPTIONAL { ?role <http://vivoweb.org/ontology/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 + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?role ?roleProperty ?roleValue . + ?activity rdfs:label ?activityLabel . + ?activity core:grantAwardedBy ?awardedBy . + ?awardedBy rdfs:label ?awardedByLabel . + ?activity core:administeredBy ?adminedBy . + ?adminedBy rdfs:label ?adminedByLabel + } WHERE { + { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + } UNION { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role ?roleProperty ?roleValue + } UNION { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity rdfs:label ?activityLabel + } UNION { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:grantAwardedBy ?awardedBy . + ?awardedBy rdfs:label ?awardedByLabel + } UNION { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:administeredBy ?adminedBy . + ?adminedBy rdfs:label ?adminedByLabel + } + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:start ?dateTimeStartValueRole . + ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole + } WHERE { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:start ?dateTimeStartValueRole . + ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:end ?dateTimeEndValueRole . + ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole + } WHERE { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:end ?dateTimeEndValueRole . + ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole + } + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . + ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . + ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant + } WHERE { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . + ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . + ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . + ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . + ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant + } WHERE { + ?subject ?property ?role . + ?role a core:CoPrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . + ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . + ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant + } + + + + diff --git a/productMods/config/listViewConfig-hasEditorRole.xml b/productMods/config/listViewConfig-hasEditorRole.xml index 0d2b7854..4e868cf7 100644 --- a/productMods/config/listViewConfig-hasEditorRole.xml +++ b/productMods/config/listViewConfig-hasEditorRole.xml @@ -22,18 +22,19 @@ ?subject ?property ?role OPTIONAL { ?role core:roleContributesTo ?activity . - ?activity vitro:mostSpecificType ?subclass - OPTIONAL { ?activity rdfs:label ?activityName } - OPTIONAL { ?subclass rdfs:label ?subclassLabel } - } - - OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart - } - OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd - } + ?activity vitro:mostSpecificType ?subclass . + ?subclass rdfs:label ?subclassLabel + } + OPTIONAL { ?role core:roleContributesTo ?activity . + ?activity rdfs:label ?activityName + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd } } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityName diff --git a/productMods/config/listViewConfig-hasInvestigatorRole.xml b/productMods/config/listViewConfig-hasInvestigatorRole.xml index 98344214..0e494ac9 100644 --- a/productMods/config/listViewConfig-hasInvestigatorRole.xml +++ b/productMods/config/listViewConfig-hasInvestigatorRole.xml @@ -24,144 +24,87 @@ WHERE { ?subject ?property ?role . - ?role a ?objectType . + ?role a core:InvestigatorRole . ?role vitro:mostSpecificType ?subclass - OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity rdfs:label ?activityLabel . LET (?activityName := afn:localname(?activity)) - OPTIONAL { ?activity rdfs:label ?activityLabel } - } - OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity - LET (?activityName := afn:localname(?activity)) - OPTIONAL { ?activity rdfs:label ?activityLabel } } - OPTIONAL { ?activity core:grantAwardedBy ?awardedBy . + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:grantAwardedBy ?awardedBy . ?awardedBy rdfs:label ?awardedByLabel } - OPTIONAL { ?activity core:administeredBy ?adminedBy . + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:administeredBy ?adminedBy . ?adminedBy rdfs:label ?adminedByLabel } - OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole - OPTIONAL { ?dateTimeIntervalRole core:start ?dateTimeStartValueRole . - ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole - } - OPTIONAL { ?dateTimeIntervalRole core:end ?dateTimeEndValueRole . - ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole - } - } - OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?grant . - ?grant core:dateTimeInterval ?dateTimeIntervalGrant - OPTIONAL { ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . - ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant - } - OPTIONAL { ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . - ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant - } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:start ?dateTimeStartValueRole . + ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:end ?dateTimeEndValueRole . + ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole + } + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . + ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . + ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant + } + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . + ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . + ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant } OPTIONAL { ?role core:hideFromDisplay ?hideThis } - FILTER ( bound(?activity) && ?subclass = ?objectType) + FILTER ( ?subclass = core:InvestigatorRole) } ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName - - - PREFIX core: <http://vivoweb.org/ontology/core#> - PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> - PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> - - CONSTRUCT { - ?subject ?property ?role . - ?role a ?objectType . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . - ?activity rdfs:label ?activityLabel - } WHERE { - { - ?subject ?property ?role . - ?role a ?objectType . - ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity - } UNION - { - ?subject ?property ?role . - ?role a ?objectType . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . - ?activity rdfs:label ?activityLabel - } - } - - - - PREFIX core: <http://vivoweb.org/ontology/core#> - PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> - PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> - - CONSTRUCT { - ?subject ?property ?role . - ?role a ?objectType . - ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . - ?activity rdfs:label ?activityLabel - } WHERE { - { - ?subject ?property ?role . - ?role a ?objectType . - ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity - } UNION - { - ?subject ?property ?role . - ?role a ?objectType . - ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . - ?activity rdfs:label ?activityLabel - } - } - - + PREFIX core: <http://vivoweb.org/ontology/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> CONSTRUCT { ?subject ?property ?role . - ?role a ?objectType . + ?role a core:InvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . ?role ?roleProperty ?roleValue . - ?activity rdfs:label ?activityName . + ?activity rdfs:label ?activityLabel . ?activity core:grantAwardedBy ?awardedBy . ?awardedBy rdfs:label ?awardedByLabel . ?activity core:administeredBy ?adminedBy . ?adminedBy rdfs:label ?adminedByLabel } WHERE { { - ?subject ?property ?role + ?subject ?property ?role . + ?role a core:InvestigatorRole . } UNION { ?subject ?property ?role . - ?role a ?objectType . + ?role a core:InvestigatorRole . ?role ?roleProperty ?roleValue } UNION { ?subject ?property ?role . - ?role a ?objectType . + ?role a core:InvestigatorRole . ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . - ?activity rdfs:label ?activityName + ?activity a core:Grant . + ?activity rdfs:label ?activityLabel } UNION { ?subject ?property ?role . - ?role a ?objectType . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . - ?activity rdfs:label ?activityName - } UNION { - ?subject ?property ?role . - ?role a ?objectType . - ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . - ?activity core:grantAwardedBy ?awardedBy - } UNION { - ?subject ?property ?role . - ?role a ?objectType . - ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?role a core:InvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . ?activity core:grantAwardedBy ?awardedBy . ?awardedBy rdfs:label ?awardedByLabel } UNION { ?subject ?property ?role . - ?role a ?objectType . - ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . - ?activity core:administeredBy ?adminedBy - } UNION { - ?subject ?property ?role . - ?role a ?objectType . + ?role a core:InvestigatorRole . ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . ?activity core:administeredBy ?adminedBy . ?adminedBy rdfs:label ?adminedByLabel } @@ -172,13 +115,13 @@ PREFIX core: <http://vivoweb.org/ontology/core#> CONSTRUCT { ?subject ?property ?role . - ?role a ?objectType . + ?role a core:InvestigatorRole . ?role core:dateTimeInterval ?dateTimeIntervalRole . ?dateTimeIntervalRole core:start ?dateTimeStartValueRole . ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole } WHERE { ?subject ?property ?role . - ?role a ?objectType . + ?role a core:InvestigatorRole . ?role core:dateTimeInterval ?dateTimeIntervalRole . ?dateTimeIntervalRole core:start ?dateTimeStartValueRole . ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole @@ -189,13 +132,13 @@ PREFIX core: <http://vivoweb.org/ontology/core#> CONSTRUCT { ?subject ?property ?role . - ?role a ?objectType . + ?role a core:InvestigatorRole . ?role core:dateTimeInterval ?dateTimeIntervalRole . ?dateTimeIntervalRole core:end ?dateTimeEndValueRole . ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole } WHERE { ?subject ?property ?role . - ?role a ?objectType . + ?role a core:InvestigatorRole . ?role core:dateTimeInterval ?dateTimeIntervalRole . ?dateTimeIntervalRole core:end ?dateTimeEndValueRole . ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole @@ -205,16 +148,18 @@ PREFIX core: <http://vivoweb.org/ontology/core#> CONSTRUCT { ?subject ?property ?role . - ?role a ?objectType . - ?role <http://vivoweb.org/ontology/core#relatedBy> ?grant . - ?grant core:dateTimeInterval ?dateTimeIntervalGrant . + ?role a core:InvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant } WHERE { ?subject ?property ?role . - ?role a ?objectType . - ?role <http://vivoweb.org/ontology/core#relatedBy> ?grant . - ?grant core:dateTimeInterval ?dateTimeIntervalGrant . + ?role a core:InvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant } @@ -224,16 +169,18 @@ PREFIX core: <http://vivoweb.org/ontology/core#> CONSTRUCT { ?subject ?property ?role . - ?role a ?objectType . - ?role <http://vivoweb.org/ontology/core#relatedBy> ?grant . - ?grant core:dateTimeInterval ?dateTimeIntervalGrant . + ?role a core:InvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant } WHERE { ?subject ?property ?role . - ?role a ?objectType . - ?role <http://vivoweb.org/ontology/core#relatedBy> ?grant . - ?grant core:dateTimeInterval ?dateTimeIntervalGrant . + ?role a core:InvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant } diff --git a/productMods/config/listViewConfig-hasPresenterRole.xml b/productMods/config/listViewConfig-hasPresenterRole.xml index a6c58288..6b799937 100644 --- a/productMods/config/listViewConfig-hasPresenterRole.xml +++ b/productMods/config/listViewConfig-hasPresenterRole.xml @@ -30,68 +30,50 @@ OPTIONAL { ?role rdfs:label ?roleLabel } - OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation + OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . + ?presentation rdfs:label ?presentationLabel . LET (?presentationName := afn:localname(?presentation)) - - OPTIONAL { ?presentation rdfs:label ?presentationLabel } - - OPTIONAL { ?conference a bibo:Conference . - OPTIONAL { ?conference rdfs:label ?conferenceLabel } - - { - ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?conference - } UNION { - ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation - } - } - OPTIONAL { - { - ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop . - ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?conference - } UNION { - ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . - ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop - } - OPTIONAL { ?conference rdfs:label ?conferenceLabel } - } - - - OPTIONAL { ?series a vivo:EventSeries . - OPTIONAL { ?series rdfs:label ?seriesLabel } - - { - ?presentation vivo:inEventWithin ?series - } UNION { - ?series vivo:seriesForEvent ?presentation - } - } - OPTIONAL { - { - ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop . - ?workshop vivo:inEventSeries ?series - } UNION { - ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . - ?series vivo:seriesForEvent ?workshop - } - OPTIONAL { ?series rdfs:label ?seriesLabel } - } - - - ?presentation vitro:mostSpecificType ?subclass . - - { - ?subclass rdfs:subClassOf vivo:Presentation - } UNION { - ?subclass owl:equivalentClass vivo:Presentation - } - - - } - - OPTIONAL { ?role vivo:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval vivo:start ?dateTimeStartValue . - ?dateTimeStartValue vivo:dateTime ?dateTime - } + } + OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . + ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?conference . + ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . + ?conference a bibo:Conference . + ?conference rdfs:label ?conferenceLabel + } + OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . + ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop . + ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . + ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?conference . + ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop . + ?conference rdfs:label ?conferenceLabel + } + OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . + ?presentation vivo:inEventWithin ?series . + ?series vivo:seriesForEvent ?presentation . + ?series rdfs:label ?seriesLabel + } + OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . + ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop . + ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . + ?workshop vivo:inEventSeries ?series . + ?series vivo:seriesForEvent ?workshop . + ?series rdfs:label ?seriesLabel + } + + OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . + ?presentation vitro:mostSpecificType ?subclass . + } + + + OPTIONAL { ?role vivo:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval vivo:start ?dateTimeStartValue . + ?dateTimeStartValue vivo:dateTime ?dateTime } @@ -101,44 +83,18 @@ } ORDER BY ?subclass DESC(?dateTime) ?presentationLabel ?presentationName - - PREFIX vivo: <http://vivoweb.org/ontology/core#> - PREFIX owl: <http://www.w3.org/2002/07/owl#> - PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> - PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> - - CONSTRUCT { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?presentation vitro:mostSpecificType ?subclass . - ?subclass rdfs:subClassOf vivo:Presentation . - ?subclass owl:equivalentClass vivo:Presentation . - } WHERE { - { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?presentation vitro:mostSpecificType ?subclass . - ?subclass rdfs:subClassOf vivo:Presentation - } UNION { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?presentation vitro:mostSpecificType ?subclass . - ?subclass owl:equivalentClass vivo:Presentation - } - } - - PREFIX vivo: <http://vivoweb.org/ontology/core#> - PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> CONSTRUCT { ?subject ?property ?role . ?role a vivo:PresenterRole . - ?role ?roleProperty ?roleValue . - ?presentation rdfs:label ?presentationLabel + ?role rdfs:label ?roleLabel . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . + ?presentation rdfs:label ?presentationLabel . + ?presentation vitro:mostSpecificType ?subclass . } WHERE { { ?subject ?property ?role . @@ -146,12 +102,19 @@ } UNION { ?subject ?property ?role . ?role a vivo:PresenterRole . - ?role ?roleProperty ?roleValue + ?role rdfs:label ?roleLabel . } UNION { ?subject ?property ?role . ?role a vivo:PresenterRole . ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . ?presentation rdfs:label ?presentationLabel + } UNION { + ?subject ?property ?role . + ?role a vivo:PresenterRole . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . + ?presentation vitro:mostSpecificType ?subclass . } } @@ -164,37 +127,25 @@ CONSTRUCT { ?subject ?property ?role . ?role a vivo:PresenterRole . - ?conference a bibo:Conference . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?conference . + ?conference a bibo:Conference . ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . ?conference rdfs:label ?conferenceLabel } WHERE { { ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?conference a bibo:Conference . - ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?conference + ?role a vivo:PresenterRole . } UNION { ?subject ?property ?role . ?role a vivo:PresenterRole . ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?conference a bibo:Conference . + ?presentation a vivo:Presentation . ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?conference . - ?conference rdfs:label ?conferenceLabel - } UNION { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?conference a bibo:Conference . - ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation - } UNION { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?conference a bibo:Conference . ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . + ?conference a bibo:Conference . ?conference rdfs:label ?conferenceLabel } } @@ -208,43 +159,32 @@ CONSTRUCT { ?subject ?property ?role . ?role a vivo:PresenterRole . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . + ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop . + ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . + ?workshop a bibo:Workshop . ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?conference . ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop . ?conference a bibo:Conference . - ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop . - ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . ?conference rdfs:label ?conferenceLabel } WHERE { { ?subject ?property ?role . ?role a vivo:PresenterRole . + } UNION { + ?subject ?property ?role . + ?role a vivo:PresenterRole . ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?conference a bibo:Conference . + ?presentation a vivo:Presentation . ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop . - ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?conference - } UNION { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . ?conference a bibo:Conference . - ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop . - ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?conference . - ?conference rdfs:label ?conferenceLabel - } UNION { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?conference a bibo:Conference . - ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop . - ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation - } UNION { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?conference a bibo:Conference . - ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop . ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . - ?conference rdfs:label ?conferenceLabel + ?workshop a bibo:Workshop . + ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?conference . + ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop . + ?conference a bibo:Conference . + ?conference rdfs:label ?conferenceLabel } } @@ -257,6 +197,8 @@ CONSTRUCT { ?subject ?property ?role . ?role a vivo:PresenterRole . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . ?series a vivo:EventSeries . ?presentation vivo:inEventSeries ?series . ?series vivo:seriesForEvent ?presentation . @@ -266,27 +208,13 @@ { ?subject ?property ?role . ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?series a vivo:EventSeries . - ?presentation vivo:inEventSeries ?series } UNION { ?subject ?property ?role . ?role a vivo:PresenterRole . ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . ?series a vivo:EventSeries . ?presentation vivo:inEventSeries ?series . - ?series rdfs:label ?seriesLabel - } UNION { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?series a vivo:EventSeries . - ?series vivo:seriesForEvent ?presentation - } UNION { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?series a vivo:EventSeries . ?series vivo:seriesForEvent ?presentation . ?series rdfs:label ?seriesLabel } @@ -301,42 +229,30 @@ CONSTRUCT { ?subject ?property ?role . ?role a vivo:PresenterRole . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . + ?presentation a vivo:Presentation . + ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop . + ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . + ?workshop a bibo:Workshop . ?workshop vivo:inEventSeries ?series . ?series vivo:seriesForEvent ?workshop . ?series a vivo:EventSeries . - ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop . - ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . ?series rdfs:label ?seriesLabel } WHERE { { ?subject ?property ?role . ?role a vivo:PresenterRole . + } UNION { + ?subject ?property ?role . + ?role a vivo:PresenterRole . ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?series a vivo:EventSeries . + ?presentation a vivo:Presentation . ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop . - ?workshop vivo:inEventSeries ?series - } UNION { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?series a vivo:EventSeries . - ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop . - ?workshop vivo:inEventSeries ?series . - ?series rdfs:label ?seriesLabel - } UNION { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?series a vivo:EventSeries . - ?series vivo:seriesForEvent ?workshop . - ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation - } UNION { - ?subject ?property ?role . - ?role a vivo:PresenterRole . - ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation . - ?series a vivo:EventSeries . - ?series vivo:seriesForEvent ?workshop . ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation . + ?workshop a bibo:Workshop . + ?workshop vivo:inEventSeries ?series . + ?series vivo:seriesForEvent ?workshop . + ?series a vivo:EventSeries . ?series rdfs:label ?seriesLabel } } diff --git a/productMods/config/listViewConfig-hasPrincipalInvestigatorRole.xml b/productMods/config/listViewConfig-hasPrincipalInvestigatorRole.xml new file mode 100644 index 00000000..023a1765 --- /dev/null +++ b/productMods/config/listViewConfig-hasPrincipalInvestigatorRole.xml @@ -0,0 +1,188 @@ + + + + + + + + PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#> + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> + + SELECT DISTINCT + ?role + ?activity ?activityName + ?activityLabel + ?awardedBy + ?adminedBy + ?awardedByLabel + ?adminedByLabel + ?dateTimeStartRole ?dateTimeEndRole + ?dateTimeStartGrant ?dateTimeEndGrant + ?hideThis + WHERE { + + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity rdfs:label ?activityLabel . + LET (?activityName := afn:localname(?activity)) + } + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:grantAwardedBy ?awardedBy . + ?awardedBy rdfs:label ?awardedByLabel + } + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:administeredBy ?adminedBy . + ?adminedBy rdfs:label ?adminedByLabel + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:start ?dateTimeStartValueRole . + ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:end ?dateTimeEndValueRole . + ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole + } + OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . + ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . + ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant + } + OPTIONAL { ?role <http://vivoweb.org/ontology/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 + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?role ?roleProperty ?roleValue . + ?activity rdfs:label ?activityLabel . + ?activity core:grantAwardedBy ?awardedBy . + ?awardedBy rdfs:label ?awardedByLabel . + ?activity core:administeredBy ?adminedBy . + ?adminedBy rdfs:label ?adminedByLabel + } WHERE { + { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + } UNION { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role ?roleProperty ?roleValue + } UNION { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity rdfs:label ?activityLabel + } UNION { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:grantAwardedBy ?awardedBy . + ?awardedBy rdfs:label ?awardedByLabel + } UNION { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:administeredBy ?adminedBy . + ?adminedBy rdfs:label ?adminedByLabel + } + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:start ?dateTimeStartValueRole . + ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole + } WHERE { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:start ?dateTimeStartValueRole . + ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:end ?dateTimeEndValueRole . + ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole + } WHERE { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role core:dateTimeInterval ?dateTimeIntervalRole . + ?dateTimeIntervalRole core:end ?dateTimeEndValueRole . + ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole + } + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . + ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . + ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant + } WHERE { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . + ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant . + ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . + ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . + ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant + } WHERE { + ?subject ?property ?role . + ?role a core:PrincipalInvestigatorRole . + ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity . + ?activity a core:Grant . + ?activity core:dateTimeInterval ?dateTimeIntervalGrant . + ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant . + ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant + } + + + + diff --git a/productMods/config/listViewConfig-hasReviewerRole.xml b/productMods/config/listViewConfig-hasReviewerRole.xml index e65fcada..b812a5b2 100644 --- a/productMods/config/listViewConfig-hasReviewerRole.xml +++ b/productMods/config/listViewConfig-hasReviewerRole.xml @@ -22,18 +22,20 @@ ?subject ?property ?role OPTIONAL { ?role core:roleContributesTo ?activity . - ?activity vitro:mostSpecificType ?subclass - OPTIONAL { ?activity rdfs:label ?activityName } - OPTIONAL { ?subclass rdfs:label ?subclassLabel } - } + ?activity rdfs:label ?activityName . + } - OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart - } - OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd - } + OPTIONAL { ?role core:roleContributesTo ?activity . + ?activity vitro:mostSpecificType ?subclass . + ?subclass rdfs:label ?subclassLabel + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd } } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityName @@ -60,20 +62,11 @@ ?subject ?property ?role . ?role a core:ReviewerRole . ?role vitro:mostSpecificType ?roleSubclass - } UNION { - ?subject ?property ?role . - ?role a core:ReviewerRole . - ?role core:roleContributesTo ?activity } UNION { ?subject ?property ?role . ?role a core:ReviewerRole . ?role core:roleContributesTo ?activity . ?activity rdfs:label ?activityName . - } UNION { - ?subject ?property ?role . - ?role a core:ReviewerRole . - ?role core:roleContributesTo ?activity . - ?activity vitro:mostSpecificType ?subclass } UNION { ?subject ?property ?role . ?role a core:ReviewerRole . diff --git a/productMods/config/listViewConfig-hasRole.xml b/productMods/config/listViewConfig-hasRole.xml index 5e4a4e1b..46a53d9f 100644 --- a/productMods/config/listViewConfig-hasRole.xml +++ b/productMods/config/listViewConfig-hasRole.xml @@ -23,7 +23,6 @@ WHERE { ?subject ?property ?role . ?role a ?objectType . - ?role vitro:mostSpecificType ?roleSubclass OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . ?activity rdfs:label ?activityLabel @@ -46,25 +45,15 @@ ?activity vitro:mostSpecificType ?subclass } - - OPTIONAL { ?role core:relatedBy ?activity . - ?activity rdfs:label ?activityLabel - - - ?activity vitro:mostSpecificType ?subclass - - } OPTIONAL { ?role rdfs:label ?roleLabel } - OPTIONAL { ?role core:hideFromDisplay ?hideThis } - OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart - } - OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd - } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd } - FILTER ( ?objectType = ?roleSubclass ) } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName @@ -84,22 +73,6 @@ } - - PREFIX core: <http://vivoweb.org/ontology/core#> - PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> - PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> - - CONSTRUCT { - ?subject ?property ?role . - ?role core:relatedBy ?activity . - ?activity vitro:mostSpecificType ?subclass . - } WHERE { - ?subject ?property ?role . - ?role core:relatedBy ?activity . - ?activity vitro:mostSpecificType ?subclass - } - - PREFIX core: <http://vivoweb.org/ontology/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> @@ -141,26 +114,27 @@ ?activity rdfs:label ?activityName } WHERE { { - ?subject ?property ?role + ?subject ?property ?role . + ?role a ?objectType . } UNION { ?subject ?property ?role . + ?role a ?objectType . ?role ?roleProperty ?roleValue } UNION { ?subject ?property ?role . + ?role a ?objectType . ?role core:relates ?activity . ?activity rdfs:label ?activityName } UNION { ?subject ?property ?role . + ?role a ?objectType . ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . ?activity rdfs:label ?activityName } UNION { ?subject ?property ?role . + ?role a ?objectType . ?role core:roleContributesTo ?activity . ?activity rdfs:label ?activityName - } UNION { - ?subject ?property ?role . - ?role core:relatedBy ?activity . - ?activity rdfs:label ?activityName } } diff --git a/productMods/config/listViewConfig-informationResourceInAuthorship.xml b/productMods/config/listViewConfig-informationResourceInAuthorship.xml index 343609b0..d02b328a 100644 --- a/productMods/config/listViewConfig-informationResourceInAuthorship.xml +++ b/productMods/config/listViewConfig-informationResourceInAuthorship.xml @@ -18,30 +18,22 @@ ?subject ?property ?authorship . OPTIONAL { ?authorship core:rank ?rank } OPTIONAL { ?authorship core:relates ?person . - ?person a foaf:Person . - ?person rdfs:label ?personName - - OPTIONAL { ?person vitro:mostSpecificType ?subclass . - ?subclass rdfs:subClassOf foaf:Person - } - + ?person a foaf:Person . + ?person rdfs:label ?personName + + OPTIONAL { ?authorship core:relates ?person . + ?person a foaf:Person . + ?person vitro:mostSpecificType ?subclass . + ?subclass rdfs:subClassOf foaf:Person + } + } FILTER ( bound(?person) ) } ORDER BY ?subclass ?rank ?personName - - - PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> - PREFIX foaf: <http://xmlns.com/foaf/0.1/> - CONSTRUCT { - ?subclass rdfs:subClassOf foaf:Person - } WHERE { - ?subclass rdfs:subClassOf foaf:Person - } - - + PREFIX core: <http://vivoweb.org/ontology/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> @@ -54,7 +46,8 @@ ?authorship core:relates ?person . ?person a foaf:Person . ?person rdfs:label ?personName . - ?person vitro:mostSpecificType ?subclass + ?person vitro:mostSpecificType ?subclass . + ?subclass rdfs:subClassOf foaf:Person } WHERE { { ?subject ?property ?authorship . @@ -75,7 +68,8 @@ ?authorship core:relates ?person . ?person a foaf:Person . ?person rdfs:label ?personName . - ?person vitro:mostSpecificType ?subclass + ?person vitro:mostSpecificType ?subclass . + ?subclass rdfs:subClassOf foaf:Person } } diff --git a/productMods/config/listViewConfig-informationResourceInEditorship.xml b/productMods/config/listViewConfig-informationResourceInEditorship.xml index 7bd6b34f..e5fc3a01 100644 --- a/productMods/config/listViewConfig-informationResourceInEditorship.xml +++ b/productMods/config/listViewConfig-informationResourceInEditorship.xml @@ -18,30 +18,22 @@ ?subject ?property ?editorship . OPTIONAL { ?editorship core:rank ?rank } OPTIONAL { ?editorship core:relates ?person . - ?person a foaf:Person . - ?person rdfs:label ?personName - - OPTIONAL { ?person vitro:mostSpecificType ?subclass . - ?subclass rdfs:subClassOf foaf:Person - } - - } + ?person a foaf:Person . + ?person rdfs:label ?personName + } + + OPTIONAL { ?editorship core:relates ?person . + ?person a foaf:Person . + ?person vitro:mostSpecificType ?subclass . + ?subclass rdfs:subClassOf foaf:Person + } + FILTER ( bound(?person) ) } ORDER BY ?subclass ?rank ?personName - - PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> - PREFIX foaf: <http://xmlns.com/foaf/0.1/> - CONSTRUCT { - ?subclass rdfs:subClassOf foaf:Person - } WHERE { - ?subclass rdfs:subClassOf foaf:Person - } - - PREFIX core: <http://vivoweb.org/ontology/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> @@ -54,7 +46,8 @@ ?editorship core:relates ?person . ?person a foaf:Person . ?person rdfs:label ?personName . - ?person vitro:mostSpecificType ?subclass + ?person vitro:mostSpecificType ?subclass . + ?subclass rdfs:subClassOf foaf:Person } WHERE { { ?subject ?property ?editorship . @@ -75,7 +68,8 @@ ?editorship core:relates ?person . ?person a foaf:Person . ?person rdfs:label ?personName . - ?person vitro:mostSpecificType ?subclass + ?person vitro:mostSpecificType ?subclass . + ?subclass rdfs:subClassOf foaf:Person } } diff --git a/productMods/config/listViewConfig-issuedCredential.xml b/productMods/config/listViewConfig-issuedCredential.xml index 349187ad..c5a5d54f 100644 --- a/productMods/config/listViewConfig-issuedCredential.xml +++ b/productMods/config/listViewConfig-issuedCredential.xml @@ -27,27 +27,25 @@ ?subject ?property ?issuedCredential . ?issuedCredential a core:IssuedCredential . LET (?issuedCredentialLocal := afn:localname(?issuedCredential)) - OPTIONAL { ?issuedCredential rdfs:label ?issuedCredentialLabel } + OPTIONAL {?issuedCredential rdfs:label ?issuedCredentialLabel } OPTIONAL { ?issuedCredential core:relates ?credential . ?credential a core:Credential . + ?credential core:relatedBy ?issuedCredential . + ?credential rdfs:label ?credentialLabel . LET (?credentialLocal := afn:localname(?credential)) - ?credential core:relatedBy ?issuedCredential - OPTIONAL { ?credential rdfs:label ?credentialLabel } - } - OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart - } - } - OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd - } - } - OPTIONAL { ?issuedCredential core:dateIssued ?dateTimeValue - OPTIONAL { ?dateTimeValue core:dateTime ?dateTime } - } - } ORDER BY DESC(?dateTime) DESC(?dateTimeEnd) + } + OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd + } + OPTIONAL { ?issuedCredential core:dateIssued ?dateTimeValue . + ?dateTimeValue core:dateTime ?dateTime + } + } ORDER BY DESC(?dateTime) DESC(?dateTimeEnd) diff --git a/productMods/config/listViewConfig-organizationForPosition.xml b/productMods/config/listViewConfig-organizationForPosition.xml index a49f0889..d76b0976 100644 --- a/productMods/config/listViewConfig-organizationForPosition.xml +++ b/productMods/config/listViewConfig-organizationForPosition.xml @@ -29,16 +29,15 @@ OPTIONAL { ?position rdfs:label ?positionTitle } OPTIONAL { ?position core:hideFromDisplay ?hideThis } - OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart - } - OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd - } + OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd + } # Get current positions only: end date is either null or not in the past - } - # NOT EXISTS { ?position core:hideFromDisplay ?hideThis } FILTER ( !bound(?dateTimeEnd) || afn:substring(str(?dateTimeEnd), 0, 4) >= afn:substring(str(afn:now()), 0, 4) ) diff --git a/productMods/config/listViewConfig-personInPosition.xml b/productMods/config/listViewConfig-personInPosition.xml index 6922110b..6438f459 100644 --- a/productMods/config/listViewConfig-personInPosition.xml +++ b/productMods/config/listViewConfig-personInPosition.xml @@ -19,27 +19,33 @@ ?org ?orgName ?middleOrg ?middleOrgName ?outerOrg ?outerOrgName - ?dateTimeStart ?dateTimeEnd WHERE { - ?subject ?property ?position + ?dateTimeStart ?dateTimeEnd + WHERE { + ?subject ?property ?position . OPTIONAL { ?position core:relates ?org . ?org rdfs:label ?orgName - OPTIONAL { ?org obo:BFO_0000050 ?middleOrg . - ?middleOrg rdfs:label ?middleOrgName - OPTIONAL { ?middleOrg obo:BFO_0000050 ?outerOrg . - ?outerOrg rdfs:label ?outerOrgName - } - } + } + OPTIONAL { ?position core:relates ?org . + ?org rdfs:label ?orgName . + ?org obo:BFO_0000050 ?middleOrg . + ?middleOrg rdfs:label ?middleOrgName + } + OPTIONAL { ?position core:relates ?org . + ?org rdfs:label ?orgName . + ?org obo:BFO_0000050 ?middleOrg . + ?middleOrg obo:BFO_0000050 ?outerOrg . + ?outerOrg rdfs:label ?outerOrgName } OPTIONAL { ?position rdfs:label ?positionTitle } OPTIONAL { ?position core:hrJobTitle ?hrJobTitle } OPTIONAL { ?position core:rank ?rank } - OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart - } - OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd - } + OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd } OPTIONAL { ?position vitro:mostSpecificType ?subclass . @@ -75,7 +81,6 @@ PREFIX obo: <http://purl.obolibrary.org/obo/> CONSTRUCT { ?subject ?property ?position . - ?position a core:Position . ?position ?positionProperty ?positionValue . ?org rdfs:label ?orgName . ?org obo:BFO_0000050 ?middleOrg . @@ -86,14 +91,7 @@ { ?subject ?property ?position . ?position a core:Position . - } UNION { - ?subject ?property ?position . - ?position a core:Position . ?position ?positionProperty ?positionValue - } UNION { - ?subject ?property ?position . - ?position a core:Position . - ?position core:rank ?rank } UNION { ?subject ?property ?position . ?position a core:Position . @@ -105,12 +103,6 @@ ?position a core:Position . ?position core:relates ?org . ?org a foaf:Organization . - ?org obo:BFO_0000050 ?middleOrg - } UNION { - ?subject ?property ?position . - ?position a core:Position . - ?position core:relates ?org . - ?org a foaf:Organization . ?org obo:BFO_0000050 ?middleOrg . ?middleOrg rdfs:label ?middleOrgName } UNION { @@ -119,13 +111,6 @@ ?position core:relates ?org . ?org a foaf:Organization . ?org obo:BFO_0000050 ?middleOrg . - ?middleOrg obo:BFO_0000050 ?outerOrg - } UNION { - ?subject ?property ?position . - ?position a core:Position . - ?position core:positionInOrganization ?org . - ?org a foaf:Organization . - ?org obo:BFO_0000050 ?middleOrg . ?middleOrg obo:BFO_0000050 ?outerOrg . ?outerOrg rdfs:label ?outerOrgName } @@ -136,28 +121,22 @@ PREFIX core: <http://vivoweb.org/ontology/core#> CONSTRUCT { ?subject ?property ?position . - ?position a core:Position . ?position core:dateTimeInterval ?dateTimeInterval . ?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeStartValue core:dateTime ?dateTimeStart . - ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd } WHERE { ?subject ?property ?position . ?position a core:Position . ?position core:dateTimeInterval ?dateTimeInterval . ?dateTimeInterval core:start ?dateTimeStartValue . ?dateTimeStartValue core:dateTime ?dateTimeStart . - ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd } - + diff --git a/productMods/config/listViewConfig-preferredTitle.xml b/productMods/config/listViewConfig-preferredTitle.xml index c592fbb9..fc26114c 100644 --- a/productMods/config/listViewConfig-preferredTitle.xml +++ b/productMods/config/listViewConfig-preferredTitle.xml @@ -12,8 +12,8 @@ ?preferredTitle WHERE { ?subject ?property ?vcard . - ?vcard vcard:hasTitle ?title - OPTIONAL { ?title vcard:title ?preferredTitle } + ?vcard vcard:hasTitle ?title . + ?title vcard:title ?preferredTitle } diff --git a/productMods/config/listViewConfig-relatedRole.xml b/productMods/config/listViewConfig-relatedRole.xml index 86460c02..175973b6 100644 --- a/productMods/config/listViewConfig-relatedRole.xml +++ b/productMods/config/listViewConfig-relatedRole.xml @@ -30,23 +30,27 @@ http://vivoweb.org/ontology/core#realizedRole and http://vivoweb.org/ontology/co # We need ?subclass in the uncollated query to get the roleTypeLabel # for roles that have no label. - OPTIONAL { ?role vitro:mostSpecificType ?subclass . - OPTIONAL { ?subclass rdfs:label ?roleTypeLabel } - OPTIONAL { ?role <http://purl.obolibrary.org/obo/RO_0000052> ?indivInRole - OPTIONAL { ?indivInRole rdfs:label ?indivLabel } - } - OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000055> ?indivInRole - OPTIONAL { ?indivInRole rdfs:label ?indivLabel } - } + OPTIONAL { ?role vitro:mostSpecificType ?subclass . } + OPTIONAL { ?role vitro:mostSpecificType ?subclass . + ?subclass rdfs:label ?roleTypeLabel + } + OPTIONAL { ?role <http://purl.obolibrary.org/obo/RO_0000052> ?indivInRole } + OPTIONAL { ?role <http://purl.obolibrary.org/obo/RO_0000052> ?indivInRole . + ?indivInRole rdfs:label ?indivLabel + } + OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000055> ?indivInRole . + } + OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000055> ?indivInRole . + ?indivInRole rdfs:label ?indivLabel } - OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart - } - OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue . - ?dateTimeEndValue core:dateTime ?dateTimeEnd - } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd } FILTER ( bound(?indivInRole) ) diff --git a/productMods/config/listViewConfig-researchActivities.xml b/productMods/config/listViewConfig-researchActivities.xml new file mode 100644 index 00000000..1e401b95 --- /dev/null +++ b/productMods/config/listViewConfig-researchActivities.xml @@ -0,0 +1,157 @@ + + + + + + + + PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#> + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> + + SELECT DISTINCT ?subclass + # send the property to the template, since this view supports multiple role properties + ?property + ?role + ?roleLabel + ?activity ?activityName + ?activityLabel + ?dateTimeStart ?dateTimeEnd + ?hideThis + ?objectType + WHERE { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role vitro:mostSpecificType ?roleSubclass + + OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity rdfs:label ?activityLabel + + + ?activity vitro:mostSpecificType ?subclass + + } + OPTIONAL { ?role core:relatedBy ?activity . + ?activity rdfs:label ?activityLabel + + + ?activity vitro:mostSpecificType ?subclass + + } + OPTIONAL { ?role rdfs:label ?roleLabel } + OPTIONAL { ?role core:hideFromDisplay ?hideThis } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd + } + FILTER ( ?roleSubclass = core:ResearcherRole) + } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> + + CONSTRUCT { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role core:relatedBy ?activity . + ?activity vitro:mostSpecificType ?subclass . + } WHERE { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role core:relatedBy ?activity . + ?activity vitro:mostSpecificType ?subclass + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> + + CONSTRUCT { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity vitro:mostSpecificType ?subclass . + } WHERE { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity vitro:mostSpecificType ?subclass + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role ?roleProperty ?roleValue . + ?activity rdfs:label ?activityName + } WHERE { + { + ?subject ?property ?role . + ?role a core:ResearcherRole . + } UNION { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role ?roleProperty ?roleValue + } UNION { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity rdfs:label ?activityName + } UNION { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role core:relatedBy ?activity . + ?activity rdfs:label ?activityName + } + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } WHERE { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd + } WHERE { + ?subject ?property ?role . + ?role a core:ResearcherRole . + ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd + } + + + + diff --git a/productMods/config/listViewConfig-researchAreaOf.xml b/productMods/config/listViewConfig-researchAreaOf.xml index 3a161ec8..b40b84d7 100644 --- a/productMods/config/listViewConfig-researchAreaOf.xml +++ b/productMods/config/listViewConfig-researchAreaOf.xml @@ -26,14 +26,19 @@ ?subject ?property ?person . OPTIONAL { ?person core:relatedBy ?position . ?position a core:Position - OPTIONAL { ?position rdfs:label ?posnLabel } + } + OPTIONAL { ?person core:relatedBy ?position . + ?position a core:Position . + ?position rdfs:label ?posnLabel } OPTIONAL { ?person rdfs:label ?personName } OPTIONAL { ?person obo:ARG_2000028 ?vcard . ?vcard vcard:hasTitle ?titleObj . ?titleObj vcard:title ?title } - OPTIONAL { ?position core:relates ?org . + OPTIONAL { ?person core:relatedBy ?position . + ?position a core:Position . + ?position core:relates ?org . ?org a foaf:Organization . ?org rdfs:label ?orgLabel } diff --git a/productMods/config/listViewConfig-roleContributesTo.xml b/productMods/config/listViewConfig-roleContributesTo.xml new file mode 100644 index 00000000..6cc74045 --- /dev/null +++ b/productMods/config/listViewConfig-roleContributesTo.xml @@ -0,0 +1,133 @@ + + + + + + + + PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#> + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> + + SELECT DISTINCT ?subclass + # send the property to the template, since this view supports multiple role properties + ?property + ?role + ?roleLabel + ?activity ?activityName + ?activityLabel + ?dateTimeStart ?dateTimeEnd + ?hideThis + ?objectType + WHERE { + ?subject ?property ?role . + ?role a ?objectType . + + OPTIONAL { ?role core:roleContributesTo ?activity . + ?activity rdfs:label ?activityLabel + + + ?activity vitro:mostSpecificType ?subclass + + } + OPTIONAL { ?role rdfs:label ?roleLabel } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd + } + } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> + + CONSTRUCT { + ?subject ?property ?role . + ?role a ?objectType . + ?role core:roleContributesTo ?activity . + ?activity vitro:mostSpecificType ?subclass . + } WHERE { + ?subject ?property ?role . + ?role a ?objectType . + ?role core:roleContributesTo ?activity . + ?activity vitro:mostSpecificType ?subclass + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + CONSTRUCT { + ?subject ?property ?role . + ?role ?roleProperty ?roleValue . + ?activity rdfs:label ?activityName + } WHERE { + { + ?subject ?property ?role . + ?role a ?objectType . + } UNION { + ?subject ?property ?role . + ?role a ?objectType . + ?role ?roleProperty ?roleValue + } UNION { + ?subject ?property ?role . + ?role a ?objectType . + ?role core:relates ?activity . + ?activity rdfs:label ?activityName + } UNION { + ?subject ?property ?role . + ?role a ?objectType . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity rdfs:label ?activityName + } UNION { + ?subject ?property ?role . + ?role a ?objectType . + ?role core:roleContributesTo ?activity . + ?activity rdfs:label ?activityName + } + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a ?objectType . + ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } WHERE { + ?subject ?property ?role . + ?role a ?objectType . + ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + 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 + } + + + + diff --git a/productMods/config/listViewConfig-roleRealizedIn.xml b/productMods/config/listViewConfig-roleRealizedIn.xml new file mode 100644 index 00000000..a57e828a --- /dev/null +++ b/productMods/config/listViewConfig-roleRealizedIn.xml @@ -0,0 +1,133 @@ + + + + + + + + PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#> + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> + + SELECT DISTINCT ?subclass + # send the property to the template, since this view supports multiple role properties + ?property + ?role + ?roleLabel + ?activity ?activityName + ?activityLabel + ?dateTimeStart ?dateTimeEnd + ?hideThis + ?objectType + WHERE { + ?subject ?property ?role . + ?role a ?objectType . + + OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity rdfs:label ?activityLabel + + + ?activity vitro:mostSpecificType ?subclass + + } + OPTIONAL { ?role rdfs:label ?roleLabel } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:end ?dateTimeEndValue . + ?dateTimeEndValue core:dateTime ?dateTimeEnd + } + } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> + + CONSTRUCT { + ?subject ?property ?role . + ?role a ?objectType . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity vitro:mostSpecificType ?subclass . + } WHERE { + ?subject ?property ?role . + ?role a ?objectType . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity vitro:mostSpecificType ?subclass + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + CONSTRUCT { + ?subject ?property ?role . + ?role ?roleProperty ?roleValue . + ?activity rdfs:label ?activityName + } WHERE { + { + ?subject ?property ?role . + ?role a ?objectType . + } UNION { + ?subject ?property ?role . + ?role a ?objectType . + ?role ?roleProperty ?roleValue + } UNION { + ?subject ?property ?role . + ?role a ?objectType . + ?role core:relates ?activity . + ?activity rdfs:label ?activityName + } UNION { + ?subject ?property ?role . + ?role a ?objectType . + ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity . + ?activity rdfs:label ?activityName + } UNION { + ?subject ?property ?role . + ?role a ?objectType . + ?role core:roleContributesTo ?activity . + ?activity rdfs:label ?activityName + } + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + CONSTRUCT { + ?subject ?property ?role . + ?role a ?objectType . + ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } WHERE { + ?subject ?property ?role . + ?role a ?objectType . + ?role core:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval core:start ?dateTimeStartValue . + ?dateTimeStartValue core:dateTime ?dateTimeStart + } + + + + PREFIX core: <http://vivoweb.org/ontology/core#> + 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 + } + + + + diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-hasPresenterRole.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-hasPresenterRole.ftl index 0c19e9b4..bfc1e92d 100644 --- a/productMods/templates/freemarker/body/partials/individual/propStatement-hasPresenterRole.ftl +++ b/productMods/templates/freemarker/body/partials/individual/propStatement-hasPresenterRole.ftl @@ -16,7 +16,7 @@ <#macro showRole statement> <#local linkedIndividual> <#if statement.presentation??> - ${statement.presentationLabel!statement.presentationName} + ${statement.presentationLabel!statement.presentationName!""} <#else> <#-- This shouldn't happen, but we must provide for it --> ${i18n().missing_presentation} diff --git a/rdf/display/everytime/PropertyConfig.n3 b/rdf/display/everytime/PropertyConfig.n3 index 0ae8434d..756165ea 100644 --- a/rdf/display/everytime/PropertyConfig.n3 +++ b/rdf/display/everytime/PropertyConfig.n3 @@ -69,7 +69,7 @@ local:hasServiceProviderRoleContext a :ConfigContext ; :qualifiedBy . local:hasServiceProviderRoleConfig a :ObjectPropertyDisplayConfig ; - :listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ; + :listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ; :displayName "service to the profession" ; vitro:displayRankAnnot 20; vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ; @@ -84,7 +84,7 @@ local:hasClinicalRoleContext a :ConfigContext ; :qualifiedBy . local:hasClinicalRoleConfig a :ObjectPropertyDisplayConfig ; - :listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ; + :listViewConfigFile "listViewConfig-hasClinicalActivity.xml"^^xsd:string ; :displayName "clinical activities" ; vitro:displayRankAnnot 70; vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ; @@ -99,7 +99,7 @@ local:hasLeaderRoleContext a :ConfigContext ; :qualifiedBy . local:hasLeaderRoleConfig a :ObjectPropertyDisplayConfig ; - :listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ; + :listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ; :displayName "head of" ; vitro:displayRankAnnot 30; vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ; @@ -114,7 +114,7 @@ local:hasMemberRoleContext a :ConfigContext ; :qualifiedBy . local:hasMemberRoleConfig a :ObjectPropertyDisplayConfig ; - :listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ; + :listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ; :displayName "member of" ; vitro:displayRankAnnot 50; vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ; @@ -129,7 +129,7 @@ local:hasTeacherRoleContext a :ConfigContext ; :qualifiedBy . local:hasTeacherRoleConfig a :ObjectPropertyDisplayConfig ; - :listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ; + :listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ; :displayName "teaching activities" ; vitro:displayRankAnnot 20; vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ; @@ -174,7 +174,7 @@ local:hasOrganizerRoleContext a :ConfigContext ; :qualifiedBy . local:hasOrganizerRoleConfig a :ObjectPropertyDisplayConfig ; - :listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ; + :listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ; :displayName "organizer of" ; vitro:displayRankAnnot 4; vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ; @@ -189,7 +189,7 @@ local:hasOutreachProviderRoleContext a :ConfigContext ; :qualifiedBy . local:hasOutreachProviderRoleConfig a :ObjectPropertyDisplayConfig ; - :listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ; + :listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ; :displayName "outreach and community service" ; vitro:displayRankAnnot 50; vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ; @@ -219,7 +219,7 @@ local:hasResearcherRoleContext a :ConfigContext ; :qualifiedBy . local:hasResearcherRoleConfig a :ObjectPropertyDisplayConfig ; - :listViewConfigFile "listViewConfig-hasRole.xml"^^xsd:string ; + :listViewConfigFile "listViewConfig-researchActivities.xml"^^xsd:string ; :displayName "research activities" ; vitro:displayRankAnnot 15; vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ; @@ -249,7 +249,7 @@ local:hasPrincipalInvestigatorRoleContext a :ConfigContext ; :qualifiedBy . local:hasPrincipalInvestigatorRoleConfig a :ObjectPropertyDisplayConfig ; - :listViewConfigFile "listViewConfig-hasInvestigatorRole.xml"^^xsd:string ; + :listViewConfigFile "listViewConfig-hasPrincipalInvestigatorRole.xml"^^xsd:string ; :displayName "principal investigator on" ; vitro:displayRankAnnot 20; vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ; @@ -264,7 +264,7 @@ local:hasCo-PrincipalInvestigatorRoleContext a :ConfigContext ; :qualifiedBy . local:hasCo-PrincipalInvestigatorRoleConfig a :ObjectPropertyDisplayConfig ; - :listViewConfigFile "listViewConfig-hasInvestigatorRole.xml"^^xsd:string ; + :listViewConfigFile "listViewConfig-hasCoPrincipalInvestigatorRole.xml"^^xsd:string ; :displayName "co-principal investigator on" ; vitro:displayRankAnnot 25; vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;