diff --git a/productMods/config/listViewConfig-authorInAuthorship.xml b/productMods/config/listViewConfig-authorInAuthorship.xml
index 1c8173ea..1ac9aa1c 100644
--- a/productMods/config/listViewConfig-authorInAuthorship.xml
+++ b/productMods/config/listViewConfig-authorInAuthorship.xml
@@ -12,20 +12,13 @@
SELECT DISTINCT ?authorship (afn:localname(?authorship) AS ?authorshipName)
?infoResource ?infoResourceName
?dateTime WHERE {
- {
- {
- ?subject ?property ?authorship .
- ?authorship core:linkedInformationResource ?infoResource .
- ?infoResource rdfs:label ?infoResourceName .
- }
- UNION {
- ?subject ?property ?authorship .
- ?authorship core:linkedInformationResource ?infoResource .
- ?infoResource core:dateTimeValue ?dateTimeValue .
- ?dateTimeValue core:dateTime ?dateTime .
- ?infoResource rdfs:label ?infoResourceName .
- }
- }
+ GRAPH ?g1 { ?subject ?property ?authorship }
+ OPTIONAL { GRAPH ?g2 { ?authorship core:linkedInformationResource ?infoResource }
+ GRAPH ?g3 { ?infoResource rdfs:label ?infoResourceName }
+ OPTIONAL { GRAPH ?g4 { ?infoResource core:dateTimeValue ?dateTimeValue }
+ GRAPH ?g5 { ?dateTimeValue core:dateTime ?dateTime }
+ }
+ }
} ORDER BY DESC(?dateTime) ?infoResourceName
@@ -37,24 +30,18 @@
SELECT DISTINCT ?subclass
?authorship (afn:localname(?authorship) AS ?authorshipName)
?infoResource ?infoResourceName
- ?dateTime WHERE { GRAPH <urn:x-arq:UnionGraph> {
- {
- ?subject ?property ?authorship .
- ?authorship core:linkedInformationResource ?infoResource .
- ?infoResource rdfs:label ?infoResourceName .
- ?infoResource a ?subclass .
- ?subclass rdfs:subClassOf core:InformationResource .
- }
- UNION {
- ?subject ?property ?authorship .
- ?authorship core:linkedInformationResource ?infoResource .
- ?infoResource rdfs:label ?infoResourceName .
- ?infoResource a ?subclass .
- ?subclass rdfs:subClassOf core:InformationResource .
- ?infoResource core:dateTimeValue ?dateTimeValue .
- ?dateTimeValue core:dateTime ?dateTime .
- }
- } } ORDER BY ?subclass DESC(?dateTime) ?infoResourceName
+ ?dateTime WHERE {
+ GRAPH ?g1 { ?subject ?property ?authorship }
+ OPTIONAL { GRAPH ?g2 { ?authorship core:linkedInformationResource ?infoResource }
+ GRAPH ?g3 { ?infoResource rdfs:label ?infoResourceName }
+ OPTIONAL { GRAPH ?g4 { ?subclass rdfs:subClassOf core:InformationResource }
+ GRAPH ?g5 { ?infoResource a ?subclass }
+ }
+ OPTIONAL { GRAPH ?g6 { ?infoResource core:dateTimeValue ?dateTimeValue }
+ GRAPH ?g7 { ?dateTimeValue core:dateTime ?dateTime }
+ }
+ }
+ } ORDER BY ?subclass DESC(?dateTime) ?infoResourceName
propStatement-authorInAuthorship.ftl
diff --git a/productMods/config/listViewConfig-dateTimeInterval.xml b/productMods/config/listViewConfig-dateTimeInterval.xml
index f295a05a..63f482c8 100644
--- a/productMods/config/listViewConfig-dateTimeInterval.xml
+++ b/productMods/config/listViewConfig-dateTimeInterval.xml
@@ -16,46 +16,27 @@
?valueEnd ?valueEndName
?dateTimeEnd
?precisionEnd WHERE {
- {
- ?subject ?property ?dateTimeInterval
+ GRAPH ?g1 { ?subject ?property ?dateTimeInterval
+ LET (?intervalName := afn:localname(?dateTimeInterval))
}
- UNION {
- ?subject ?property ?dateTimeInterval .
- ?dateTimeInterval core:start ?valueStart .
- }
- UNION {
- ?subject ?property ?dateTimeInterval .
- ?dateTimeInterval core:start ?valueStart .
- ?valueStart core:dateTime ?dateTimeStart .
- }
- UNION {
- ?subject ?property ?dateTimeInterval .
- ?dateTimeInterval core:start ?valueStart .
- ?valueStart core:dateTime ?dateTimeStart .
- ?valueStart core:dateTimePrecision ?dateTimePrecisionStart .
+ OPTIONAL { GRAPH ?g2 { ?dateTimeInterval core:start ?valueStart
+ LET (?valueStartName := afn:localname(?valueStart))
+ }
+ OPTIONAL { GRAPH ?g3 { ?valueStart core:dateTime ?dateTimeStart } }
+ OPTIONAL { GRAPH ?g4 { ?valueStart core:dateTimePrecision ?dateTimePrecisionStart
+ LET (?precisionStart := afn:localname(?dateTimePrecisionStart))
+ }
+ }
}
- UNION {
- ?subject ?property ?dateTimeInterval .
- ?dateTimeInterval core:end ?valueEnd .
- }
- UNION {
- ?subject ?property ?dateTimeInterval .
- ?dateTimeInterval core:end ?valueEnd .
- ?valueEnd core:dateTime ?dateTimeEnd .
+ OPTIONAL { GRAPH ?g5 { ?dateTimeInterval core:end ?valueEnd
+ LET (?valueEndName := afn:localname(?valueEnd))
+ }
+ OPTIONAL { GRAPH ?g6 { ?valueEnd core:dateTime ?dateTimeEnd } }
+ OPTIONAL { GRAPH ?g7 { ?valueEnd core:dateTimePrecision ?dateTimePrecisionEnd
+ LET (?precisionEnd := afn:localname(?dateTimePrecisionEnd))
+ }
+ }
}
- UNION {
- ?subject ?property ?dateTimeInterval .
- ?dateTimeInterval core:end ?valueEnd .
- ?valueEnd core:dateTime ?dateTimeEnd .
- ?valueEnd core:dateTimePrecision ?dateTimePrecisionEnd .
- }
-
- LET (?intervalName := afn:localname(?dateTimeInterval))
- LET (?valueStartName := afn:localname(?valueStart))
- LET (?precisionStart := afn:localname(?dateTimePrecisionStart))
- LET (?valueEndName := afn:localname(?valueEnd))
- LET (?precisionEnd := afn:localname(?dateTimePrecisionEnd))
-
}
diff --git a/productMods/config/listViewConfig-dateTimeValue.xml b/productMods/config/listViewConfig-dateTimeValue.xml
index 1fdfddb2..e12f7b32 100644
--- a/productMods/config/listViewConfig-dateTimeValue.xml
+++ b/productMods/config/listViewConfig-dateTimeValue.xml
@@ -13,24 +13,11 @@
(afn:localname(?dateTimeValue) AS ?dateTimeValueName)
(afn:localname(?dateTimePrecision) AS ?precision)
?dateTime WHERE {
- {
- ?subject ?property ?dateTimeValue
- }
- UNION {
- ?subject ?property ?dateTimeValue .
- ?dateTimeValue core:dateTime ?dateTime .
- }
- UNION {
- ?subject ?property ?dateTimeValue .
- ?dateTimeValue core:dateTimePrecision ?dateTimePrecision .
- }
- UNION {
- ?subject ?property ?dateTimeValue .
- ?dateTimeValue core:dateTime ?dateTime .
- ?dateTimeValue core:dateTimePrecision ?dateTimePrecision .
- }
+ GRAPH ?g1 { ?subject ?property ?dateTimeValue }
+ OPTIONAL { GRAPH ?g2 { ?dateTimeValue core:dateTime ?dateTime } }
+ OPTIONAL { GRAPH ?g3 { ?dateTimeValue core:dateTimePrecision ?dateTimePrecision } }
}
propStatement-dateTimeValue.ftl
-
+
\ No newline at end of file
diff --git a/productMods/config/listViewConfig-educationalTraining.xml b/productMods/config/listViewConfig-educationalTraining.xml
index 0f860d10..fb1e2850 100644
--- a/productMods/config/listViewConfig-educationalTraining.xml
+++ b/productMods/config/listViewConfig-educationalTraining.xml
@@ -15,72 +15,27 @@
?majorField ?deptOrSchool ?info
?dateTimeStart ?dateTimeEnd
WHERE {
- {
- ?subject ?property ?edTraining
- OPTIONAL { ?edTraining core:trainingAtOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- OPTIONAL { ?edTraining core:degreeEarned ?degree .
- ?degree rdfs:label ?degreeName .
- OPTIONAL { ?degree core:abbreviation ?degreeAbbr }
- }
- OPTIONAL { ?edTraining core:majorField ?majorField }
- OPTIONAL { ?edTraining core:departmentOrSchool ?deptOrSchool }
- OPTIONAL { ?edTraining core:supplementalInformation ?info }
- }
- UNION {
- ?subject ?property ?edTraining .
- ?edTraining core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- OPTIONAL { ?edTraining core:trainingAtOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- OPTIONAL { ?edTraining core:degreeEarned ?degree .
- ?degree rdfs:label ?degreeName .
- OPTIONAL { ?degree core:abbreviation ?degreeAbbr }
- }
- OPTIONAL { ?edTraining core:majorField ?majorField }
- OPTIONAL { ?edTraining core:departmentOrSchool ?deptOrSchool }
- OPTIONAL { ?edTraining core:supplementalInformation ?info }
- }
- UNION {
- ?subject ?property ?edTraining .
- ?edTraining core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- OPTIONAL { ?edTraining core:trainingAtOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- OPTIONAL { ?edTraining core:degreeEarned ?degree .
- ?degree rdfs:label ?degreeName .
- OPTIONAL { ?degree core:abbreviation ?degreeAbbr }
- }
- OPTIONAL { ?edTraining core:majorField ?majorField }
- OPTIONAL { ?edTraining core:departmentOrSchool ?deptOrSchool }
- OPTIONAL { ?edTraining core:supplementalInformation ?info }
- }
- UNION {
- ?subject ?property ?edTraining .
- ?edTraining core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- OPTIONAL { ?edTraining core:trainingAtOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- OPTIONAL { ?edTraining core:degreeEarned ?degree .
- ?degree rdfs:label ?degreeName .
- OPTIONAL { ?degree core:abbreviation ?degreeAbbr }
- }
- OPTIONAL { ?edTraining core:majorField ?majorField }
- OPTIONAL { ?edTraining core:departmentOrSchool ?deptOrSchool }
- OPTIONAL { ?edTraining core:supplementalInformation ?info }
- }
-
- LET (?edTrainingName := afn:localname(?edTraining))
-
+ GRAPH ?g1 { ?subject ?property ?edTraining
+ LET (?edTrainingName := afn:localname(?edTraining))
+ }
+ OPTIONAL { GRAPH ?g2 { ?edTraining core:trainingAtOrganization ?org }
+ GRAPH ?g3 { ?org rdfs:label ?orgName }
+ }
+ OPTIONAL { GRAPH ?g4 { ?edTraining core:degreeEarned ?degree }
+ OPTIONAL { GRAPH ?g5 { ?degree rdfs:label ?degreeName } }
+ OPTIONAL { GRAPH ?g6 { ?degree core:abbreviation ?degreeAbbr } }
+ }
+ OPTIONAL { GRAPH ?g7 { ?edTraining core:majorField ?majorField } }
+ OPTIONAL { GRAPH ?g8 { ?edTraining core:departmentOrSchool ?deptOrSchool } }
+ OPTIONAL { GRAPH ?g9 { ?edTraining core:supplementalInformation ?info } }
+ OPTIONAL { GRAPH ?g10 { ?edTraining core:dateTimeInterval ?dateTimeInterval }
+ OPTIONAL { GRAPH ?g11 { ?dateTimeInterval core:start ?dateTimeStartValue }
+ GRAPH ?g12 { ?dateTimeStartValue core:dateTime ?dateTimeStart }
+ }
+ OPTIONAL { GRAPH ?g13 { ?dateTimeInterval core:end ?dateTimeEndValue }
+ GRAPH ?g14 { ?dateTimeEndValue core:dateTime ?dateTimeEnd }
+ }
+ }
} ORDER BY DESC(?dateTimeEnd) DESC(?dateTimeStart)
diff --git a/productMods/config/listViewConfig-hasRole.xml b/productMods/config/listViewConfig-hasRole.xml
index 9e63f16d..0b77426b 100644
--- a/productMods/config/listViewConfig-hasRole.xml
+++ b/productMods/config/listViewConfig-hasRole.xml
@@ -12,145 +12,21 @@
SELECT DISTINCT ?role (afn:localname(?role) AS ?roleName)
?roleLabel
?activity ?activityName
- ?dateTimeStart ?dateTimeEnd WHERE { GRAPH <urn:x-arq:UnionGraph> {
- {
- {
- ?subject ?property ?role .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName
+ ?dateTimeStart ?dateTimeEnd WHERE {
+ GRAPH ?g1 { ?subject ?property ?role }
+ OPTIONAL { GRAPH ?g2 { ?role core:roleIn ?activity }
+ GRAPH ?g3 { ?activity rdfs:label ?activityName }
}
- UNION {
- ?subject ?property ?role .
- ?role rdfs:label ?roleLabel
+ OPTIONAL { GRAPH ?g4 { ?role rdfs:label ?roleLabel } }
+ OPTIONAL { GRAPH ?g5 { ?role core:dateTimeInterval ?dateTimeInterval }
+ OPTIONAL { GRAPH ?g6 { ?dateTimeInterval core:start ?dateTimeStartValue }
+ GRAPH ?g7 { ?dateTimeStartValue core:dateTime ?dateTimeStart }
+ }
+ OPTIONAL { GRAPH ?g8 { ?dateTimeInterval core:end ?dateTimeEndValue }
+ GRAPH ?g9 { ?dateTimeEndValue core:dateTime ?dateTimeEnd }
+ }
}
- UNION {
- ?subject ?property ?role .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName .
- ?role rdfs:label ?roleLabel
- }
- }
- } } ORDER BY DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityName
+ } ORDER BY DESC(?dateTimeEnd) DESC(?dateTimeStart) ?personName
@@ -162,184 +38,25 @@
?role (afn:localname(?role) AS ?roleName)
?roleLabel
?activity ?activityName
- ?dateTimeStart ?dateTimeEnd WHERE { GRAPH <urn:x-arq:UnionGraph> {
- {
- {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName
+ ?dateTimeStart ?dateTimeEnd WHERE {
+ GRAPH ?g1 { ?subject ?property ?role }
+ OPTIONAL { GRAPH ?g2 { ?role core:roleIn ?activity }
+ GRAPH ?g3 { ?activity rdfs:label ?activityName }
}
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role rdfs:label ?roleLabel
+ OPTIONAL { GRAPH ?g4 { ?role a ?subclass }
+ GRAPH ?g5 { ?subclass rdfs:subClassOf core:Role }
+ }
+ OPTIONAL { GRAPH ?g6 { ?role rdfs:label ?roleLabel } }
+ OPTIONAL { GRAPH ?g7 { ?role core:dateTimeInterval ?dateTimeInterval }
+ OPTIONAL { GRAPH ?g8 { ?dateTimeInterval core:start ?dateTimeStartValue }
+ GRAPH ?g9 { ?dateTimeStartValue core:dateTime ?dateTimeStart }
+ }
+ OPTIONAL { GRAPH ?g10 { ?dateTimeInterval core:end ?dateTimeEndValue }
+ GRAPH ?g11 { ?dateTimeEndValue core:dateTime ?dateTimeEnd }
+ }
}
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role rdfs:label ?roleLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:roleIn ?activity .
- ?activity rdfs:label ?activityName .
- ?role rdfs:label ?roleLabel
- }
- }
- } } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?personName
+ } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?personName
propStatement-hasRole.ftl
-
+
\ No newline at end of file
diff --git a/productMods/config/listViewConfig-informationResourceInAuthorship.xml b/productMods/config/listViewConfig-informationResourceInAuthorship.xml
index 1356b4bf..77a44646 100644
--- a/productMods/config/listViewConfig-informationResourceInAuthorship.xml
+++ b/productMods/config/listViewConfig-informationResourceInAuthorship.xml
@@ -11,23 +11,11 @@
SELECT DISTINCT ?authorship (afn:localname(?authorship) AS ?authorshipName)
?person ?personName WHERE {
- {
- {
- ?subject ?property ?authorship .
- ?authorship core:authorRank ?rank
- }
- UNION {
- ?subject ?property ?authorship .
- ?authorship core:linkedAuthor ?person .
- ?person rdfs:label ?personName .
- }
- UNION {
- ?subject ?property ?authorship .
- ?authorship core:linkedAuthor ?person .
- ?person rdfs:label ?personName .
- ?authorship core:authorRank ?rank .
- }
- }
+ GRAPH ?g1 { ?subject ?property ?authorship }
+ OPTIONAL { GRAPH ?g2 { ?authorship core:authorRank ?rank } }
+ OPTIONAL { GRAPH ?g3 { ?authorship core:linkedAuthor ?person }
+ GRAPH ?g4 { ?person rdfs:label ?personName }
+ }
} ORDER BY ?rank ?personName
@@ -40,21 +28,14 @@
SELECT DISTINCT ?subclass
?authorship (afn:localname(?authorship) AS ?authorshipName)
?person ?personName WHERE {
- {
- ?subject ?property ?authorship .
- ?authorship core:linkedAuthor ?person .
- ?person rdfs:label ?personName .
- ?person a ?subclass .
- ?subclass rdfs:subClassOf foaf:Person .
- }
- UNION {
- ?subject ?property ?authorship .
- ?authorship core:linkedAuthor ?person .
- ?person rdfs:label ?personName .
- ?person a ?subclass .
- ?subclass rdfs:subClassOf foaf:Person .
- ?authorship core:authorRank ?rank
- }
+ GRAPH ?g1 { ?subject ?property ?authorship }
+ OPTIONAL { GRAPH ?g2 { ?authorship core:authorRank ?rank } }
+ OPTIONAL { GRAPH ?g3 { ?authorship core:linkedAuthor ?person }
+ GRAPH ?g4 { ?person rdfs:label ?personName }
+ OPTIONAL { GRAPH ?g5 { ?person a ?subclass }
+ GRAPH ?g6 { ?subclass rdfs:subClassOf foaf:Person }
+ }
+ }
} ORDER BY ?subclass ?rank ?personName
diff --git a/productMods/config/listViewConfig-organizationForPosition.xml b/productMods/config/listViewConfig-organizationForPosition.xml
index 1781a7fd..dbc91c5b 100644
--- a/productMods/config/listViewConfig-organizationForPosition.xml
+++ b/productMods/config/listViewConfig-organizationForPosition.xml
@@ -13,116 +13,21 @@
?positionTitle
?person ?personName
?dateTimeStart ?dateTimeEnd WHERE {
- {
- ?subject ?property ?position .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName
+ GRAPH ?g1 { ?subject ?property ?position }
+ OPTIONAL { GRAPH ?g2 { ?position core:positionForPerson ?person }
+ GRAPH ?g3 { ?person rdfs:label ?personName }
}
- UNION {
- ?subject ?property ?position .
- ?position rdfs:label ?positionTitle
- }
- UNION {
- ?subject ?property ?position .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName .
- ?position rdfs:label ?positionTitle
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?subject ?property ?position .
- ?position rdfs:label ?positionTitle
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName .
- ?position rdfs:label ?positionTitle
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position rdfs:label ?positionTitle
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName .
- ?position rdfs:label ?positionTitle
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?position rdfs:label ?positionTitle
- } UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName .
- ?position rdfs:label ?positionTitle
- }
+ OPTIONAL { GRAPH ?g4 { ?position rdfs:label ?positionTitle } }
+ OPTIONAL { GRAPH ?g5 { ?position core:dateTimeInterval ?dateTimeInterval }
+ OPTIONAL { GRAPH ?g6 { ?dateTimeInterval core:start ?dateTimeStartValue }
+ GRAPH ?g7 { ?dateTimeStartValue core:dateTime ?dateTimeStart }
+ }
+ OPTIONAL { GRAPH ?g8 { ?dateTimeInterval core:end ?dateTimeEndValue }
+ GRAPH ?g9 { ?dateTimeEndValue core:dateTime ?dateTimeEnd }
+
+ }
# Current positions only: end date is either null or not in the past
- FILTER ( !bound(?dateTimeEnd) ||
+ } FILTER ( !bound(?dateTimeEnd) ||
afn:substring(str(?dateTimeEnd), 0, 4) >= afn:substring(str(afn:now()), 0, 4) )
} ORDER BY ?personName
@@ -137,124 +42,26 @@
?positionTitle
?person ?personName
?dateTimeStart ?dateTimeEnd WHERE {
- GRAPH <urn:x-arq:UnionGraph> {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- {
- {
- ?subject ?property ?position .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName
- }
- UNION {
- ?subject ?property ?position .
- ?position rdfs:label ?positionTitle
- }
- UNION {
- ?subject ?property ?position .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName .
- ?position rdfs:label ?positionTitle
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?subject ?property ?position .
- ?position rdfs:label ?positionTitle
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName .
- ?position rdfs:label ?positionTitle
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position rdfs:label ?positionTitle
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName .
- ?position rdfs:label ?positionTitle
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?position rdfs:label ?positionTitle
- } UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?position core:positionForPerson ?person .
- ?person rdfs:label ?personName .
- ?position rdfs:label ?positionTitle
- }
- }
-
+ GRAPH ?g1 { ?subject ?property ?position }
+ OPTIONAL { GRAPH ?g2 { ?position core:positionForPerson ?person }
+ GRAPH ?g3 { ?person rdfs:label ?personName }
+ }
+ OPTIONAL { GRAPH ?g4 { ?position a ?subclass }
+ GRAPH ?g5 { ?subclass rdfs:subClassOf core:Position }
+ }
+ OPTIONAL { GRAPH ?g6 { ?position rdfs:label ?positionTitle } }
+ OPTIONAL { GRAPH ?g7 { ?position core:dateTimeInterval ?dateTimeInterval }
+ OPTIONAL { GRAPH ?g8 { ?dateTimeInterval core:start ?dateTimeStartValue }
+ GRAPH ?g9 { ?dateTimeStartValue core:dateTime ?dateTimeStart }
+ }
+ OPTIONAL { GRAPH ?g10 { ?dateTimeInterval core:end ?dateTimeEndValue }
+ GRAPH ?g11 { ?dateTimeEndValue core:dateTime ?dateTimeEnd }
+ }
# Current positions only: end date is either null or not in the past
- FILTER ( !bound(?dateTimeEnd) ||
+ } FILTER ( !bound(?dateTimeEnd) ||
afn:substring(str(?dateTimeEnd), 0, 4) >= afn:substring(str(afn:now()), 0, 4) )
-
- } } ORDER BY ?subclass ?personName
+ } ORDER BY ?subclass ?personName
propStatement-organizationForPosition.ftl
-
+
\ No newline at end of file
diff --git a/productMods/config/listViewConfig-personInPosition.xml b/productMods/config/listViewConfig-personInPosition.xml
index 199f75e5..5f279f5f 100644
--- a/productMods/config/listViewConfig-personInPosition.xml
+++ b/productMods/config/listViewConfig-personInPosition.xml
@@ -12,145 +12,21 @@
SELECT DISTINCT ?position (afn:localname(?position) AS ?positionName)
?positionTitle
?org ?orgName
- ?dateTimeStart ?dateTimeEnd WHERE { GRAPH <urn:x-arq:UnionGraph> {
- {
- {
- ?subject ?property ?position .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position rdfs:label ?positionTitle .
- }
- UNION {
- ?subject ?property ?position .
- ?position rdfs:label ?positionTitle .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
+ ?dateTimeStart ?dateTimeEnd WHERE {
+ GRAPH ?g1 { ?subject ?property ?position }
+ OPTIONAL { GRAPH ?g2 { ?position core:positionInOrganization ?org }
+ GRAPH ?g3 { ?org rdfs:label ?orgName }
}
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
+ OPTIONAL { GRAPH ?g4 { ?position rdfs:label ?positionTitle } }
+ OPTIONAL { GRAPH ?g5 { ?position core:dateTimeInterval ?dateTimeInterval }
+ OPTIONAL { GRAPH ?g6 { ?dateTimeInterval core:start ?dateTimeStartValue }
+ GRAPH ?g7 { ?dateTimeStartValue core:dateTime ?dateTimeStart }
+ }
+ OPTIONAL { GRAPH ?g8 { ?dateTimeInterval core:end ?dateTimeEndValue }
+ GRAPH ?g9 { ?dateTimeEndValue core:dateTime ?dateTimeEnd }
+ }
}
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?position rdfs:label ?positionTitle .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?position rdfs:label ?positionTitle .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position rdfs:label ?positionTitle .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position rdfs:label ?positionTitle .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position rdfs:label ?positionTitle .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position rdfs:label ?positionTitle .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?position rdfs:label ?positionTitle .
- }
- UNION {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?position rdfs:label ?positionTitle .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- }
- } } ORDER BY DESC(?dateTimeEnd) DESC(?dateTimeStart) ?orgName
+ } ORDER BY DESC(?dateTimeEnd) DESC(?dateTimeStart) ?orgName
@@ -162,185 +38,25 @@
?position (afn:localname(?position) AS ?positionName)
?positionTitle
?org ?orgName
- ?dateTimeStart ?dateTimeEnd WHERE { GRAPH <urn:x-arq:UnionGraph> {
-
- {
- {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position rdfs:label ?positionTitle .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position rdfs:label ?positionTitle .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
+ ?dateTimeStart ?dateTimeEnd WHERE {
+ GRAPH ?g1 { ?subject ?property ?position }
+ OPTIONAL { GRAPH ?g2 { ?position core:positionInOrganization ?org }
+ GRAPH ?g3 { ?org rdfs:label ?orgName }
}
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:dateTimeInterval ?dateTimeInterval .
+ OPTIONAL { GRAPH ?g4 { ?position rdfs:label ?positionTitle } }
+ OPTIONAL { GRAPH ?g5 { ?position core:dateTimeInterval ?dateTimeInterval }
+ OPTIONAL { GRAPH ?g6 { ?dateTimeInterval core:start ?dateTimeStartValue }
+ GRAPH ?g7 { ?dateTimeStartValue core:dateTime ?dateTimeStart }
+ }
+ OPTIONAL { GRAPH ?g8 { ?dateTimeInterval core:end ?dateTimeEndValue }
+ GRAPH ?g9 { ?dateTimeEndValue core:dateTime ?dateTimeEnd }
+ }
}
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
+ OPTIONAL { GRAPH ?g8 { ?position a ?subclass }
+ GRAPH ?g9 { ?subclass rdfs:subClassOf core:Position }
}
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?position rdfs:label ?positionTitle .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?position rdfs:label ?positionTitle .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position rdfs:label ?positionTitle .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position rdfs:label ?positionTitle .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position rdfs:label ?positionTitle .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?subclass rdfs:subClassOf core:Position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?position rdfs:label ?positionTitle .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?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 .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?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:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?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 rdfs:label ?positionTitle .
- }
- UNION {
- ?subject ?property ?position .
- ?position a ?subclass .
- ?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 rdfs:label ?positionTitle .
- ?position core:positionInOrganization ?org .
- ?org rdfs:label ?orgName .
- }
- }
- } } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?orgName
+ } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?orgName
propStatement-personInPosition.ftl
-
+
\ No newline at end of file
diff --git a/productMods/config/listViewConfig-relatedRole.xml b/productMods/config/listViewConfig-relatedRole.xml
index 5b587bf9..dd9accc6 100644
--- a/productMods/config/listViewConfig-relatedRole.xml
+++ b/productMods/config/listViewConfig-relatedRole.xml
@@ -13,924 +13,82 @@
?roleLabel ?roleTypeLabel
?indivInRole ?indivName
?dateTimeInterval ?dateTimeStart ?dateTimeEnd WHERE {
- GRAPH <urn:x-arq:UnionGraph> {
- # Works because we don't do inferencing on properties, so the only ?roleProp
+ GRAPH ?g1 { ?subject ?property ?role }
+
+ # ?role is either a core:Role or one of its subclasses
+ {
+ { GRAPH ?g2 { ?role a ?subclass } }
+ { GRAPH ?g3 { ?subclass rdfs:subClassOf core:Role } }
+ UNION
+ { GRAPH ?g4 { ?role a core:Role } }
+ }
+
+ # Works because we don't do inferencing on subproperties, so the only ?roleProp
# returned will be the asserted one.
- {
- ?subject ?property ?role .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role rdfs:label ?roleLabel
- } UNION {
- ?subject ?property ?role .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel
- } UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role rdfs:label ?roleLabel
- } UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel
- } UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role rdfs:label ?roleLabel
- } UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel
- } UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role a ?roleType .
- ?roleType rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
+ OPTIONAL { GRAPH ?g5 { ?roleProp rdfs:subPropertyOf core:roleOf }
+ GRAPH ?g6 { ?role ?roleProp ?indivInRole }
+ GRAPH ?g7 { ?indivInRole rdfs:label ?indivName }
}
+ OPTIONAL { GRAPH ?g8 { ?role rdfs:label ?roleLabel } }
+ OPTIONAL { GRAPH ?g9 { ?subclass rdfs:label ?roleTypeLabel } }
+ OPTIONAL { GRAPH ?g10 { ?role core:dateTimeInterval ?dateTimeInterval }
+ OPTIONAL { GRAPH ?g11 { ?dateTimeInterval core:start ?dateTimeStartValue }
+ GRAPH ?g12 { ?dateTimeStartValue core:dateTime ?dateTimeStart }
+ }
+ OPTIONAL { GRAPH ?g13 { ?dateTimeInterval core:end ?dateTimeEndValue }
+ GRAPH ?g14 { ?dateTimeEndValue core:dateTime ?dateTimeEnd }
+ }
+ }
FILTER (
( ?roleProp != core:investigatorRoleOf || ?subclass = core:InvestigatorRole ) &&
( ?roleProp != core:principalInvestigatorRoleOf || ?subclass = core:PrincipalInvestigatorRole ) &&
( ?roleProp != core:co-PrincipalInvestigatorRoleOf || ?subclass = core:CoPrincipalInvestigatorRole )
)
- } } ORDER BY ?indivName ?roleLabel ?roleTypeLabel
+ } ORDER BY ?indivName ?roleLabel ?roleTypeLabel
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX core: <http://vivoweb.org/ontology/core#>
PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
+
SELECT DISTINCT ?subclass
?role (afn:localname(?role) AS ?roleName)
?roleLabel ?roleTypeLabel
?indivInRole ?indivName
?dateTimeInterval ?dateTimeStart ?dateTimeEnd WHERE {
- GRAPH <urn:x-arq:UnionGraph> {
-
- # Works because we don't do inferencing on properties, so the only ?roleProp
+ GRAPH ?g1 { ?subject ?property ?role }
+
+ # ?role is either a core:Role or one of its subclasses
+ {
+ { GRAPH ?g2 { ?role a ?subclass } }
+ { GRAPH ?g3 { ?subclass rdfs:subClassOf core:Role } }
+ UNION
+ { GRAPH ?g4 { ?role a core:Role } }
+ }
+
+ # Works because we don't do inferencing on subproperties, so the only ?roleProp
# returned will be the asserted one.
- {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role rdfs:label ?roleLabel
- } UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?roleType rdfs:label ?roleTypeLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
+ OPTIONAL { GRAPH ?g5 { ?roleProp rdfs:subPropertyOf core:roleOf }
+ GRAPH ?g6 { ?role ?roleProp ?indivInRole }
+ GRAPH ?g7 { ?indivInRole rdfs:label ?indivName }
}
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
+ OPTIONAL { GRAPH ?g8 { ?role rdfs:label ?roleLabel } }
+ OPTIONAL { GRAPH ?g9 { ?subclass rdfs:label ?roleTypeLabel } }
+ OPTIONAL { GRAPH ?g10 { ?role core:dateTimeInterval ?dateTimeInterval }
+ OPTIONAL { GRAPH ?g11 { ?dateTimeInterval core:start ?dateTimeStartValue }
+ GRAPH ?g12 { ?dateTimeStartValue core:dateTime ?dateTimeStart }
+ }
+ OPTIONAL { GRAPH ?g13 { ?dateTimeInterval core:end ?dateTimeEndValue }
+ GRAPH ?g14 { ?dateTimeEndValue core:dateTime ?dateTimeEnd }
+ }
}
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel
- } UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?subclass rdfs:label ?roleTypeLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role rdfs:label ?roleLabel
- } UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?subclass rdfs:label ?roleTypeLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel
- } UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?subclass rdfs:label ?roleTypeLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role rdfs:label ?roleLabel
- } UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?subclass rdfs:label ?roleTypeLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel
- } UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?subclass rdfs:label ?roleTypeLabel
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- }
- UNION {
- ?subject ?property ?role .
- ?role a ?subclass .
- ?subclass rdfs:subClassOf core:Role .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd .
- ?role core:dateTimeInterval ?dateTimeInterval .
- ?subclass rdfs:label ?roleTypeLabel .
- ?role rdfs:label ?roleLabel .
- ?role ?roleProp ?indivInRole .
- ?indivInRole rdfs:label ?indivName
- }
-
FILTER (
( ?roleProp != core:investigatorRoleOf || ?subclass = core:InvestigatorRole ) &&
( ?roleProp != core:principalInvestigatorRoleOf || ?subclass = core:PrincipalInvestigatorRole ) &&
( ?roleProp != core:co-PrincipalInvestigatorRoleOf || ?subclass = core:CoPrincipalInvestigatorRole )
)
-
-
-
- } } ORDER BY ?subclass ?indivName ?roleLabel ?roleTypeLabel
+ } ORDER BY ?subclass ?indivName ?roleLabel ?roleTypeLabel
propStatement-relatedRole.ftl
-
+
\ No newline at end of file