From b2476d88c9a57476ddcbdb614fc4882eddd10c25 Mon Sep 17 00:00:00 2001 From: tworrall Date: Mon, 7 Nov 2011 16:01:54 +0000 Subject: [PATCH] NIHVIVO3285: the series label will now display if the intervening event is part of a series or if the presentation itself is part of a series --- .../listViewConfig-hasPresenterRole.xml | 223 +++++++++++++----- .../propStatement-hasPresenterRole.ftl | 2 + 2 files changed, 166 insertions(+), 59 deletions(-) diff --git a/productMods/config/listViewConfig-hasPresenterRole.xml b/productMods/config/listViewConfig-hasPresenterRole.xml index f3431cf1..facd5c18 100644 --- a/productMods/config/listViewConfig-hasPresenterRole.xml +++ b/productMods/config/listViewConfig-hasPresenterRole.xml @@ -10,7 +10,7 @@ PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#> PREFIX bibo: <http://purl.org/ontology/bibo/> - PREFIX core: <http://vivoweb.org/ontology/core#> + 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#> @@ -19,6 +19,7 @@ ?role ?roleLabel ?presentation ?presentationName ?presentationLabel ?conference ?conferenceLabel + ?series ?seriesLabel ?workshop ?dateTime @@ -28,7 +29,7 @@ OPTIONAL { ?role rdfs:label ?roleLabel } - OPTIONAL { ?role core:roleRealizedIn ?presentation + OPTIONAL { ?role vivo:roleRealizedIn ?presentation LET (?presentationName := afn:localname(?presentation)) OPTIONAL { ?presentation rdfs:label ?presentationLabel } @@ -37,37 +38,58 @@ OPTIONAL { ?conference rdfs:label ?conferenceLabel } { - ?presentation core:eventWithin ?conference + ?presentation vivo:eventWithin ?conference } UNION { - ?conference core:includesEvent ?presentation + ?conference vivo:includesEvent ?presentation } } OPTIONAL { { - ?presentation core:eventWithin ?workshop . - ?workshop core:eventWithin ?conference + ?presentation vivo:eventWithin ?workshop . + ?workshop vivo:eventWithin ?conference } UNION { - ?workshop core:includesEvent ?presentation . - ?conference core:includesEvent ?workshop + ?workshop vivo:includesEvent ?presentation . + ?conference vivo:includesEvent ?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 vivo:eventWithin ?workshop . + ?workshop vivo:inEventSeries ?series + } UNION { + ?workshop vivo:includesEvent ?presentation . + ?series vivo:seriesForEvent ?workshop + } + OPTIONAL { ?series rdfs:label ?seriesLabel } + } + ?presentation vitro:mostSpecificType ?subclass . { - ?subclass rdfs:subClassOf core:Presentation + ?subclass rdfs:subClassOf vivo:Presentation } UNION { - ?subclass owl:equivalentClass core:Presentation + ?subclass owl:equivalentClass vivo:Presentation } } - OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval - OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTime + OPTIONAL { ?role vivo:dateTimeInterval ?dateTimeInterval + OPTIONAL { ?dateTimeInterval vivo:start ?dateTimeStartValue . + ?dateTimeStartValue vivo:dateTime ?dateTime } } @@ -79,34 +101,34 @@ - PREFIX core: <http://vivoweb.org/ontology/core#> + 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 core:roleRealizedIn ?presentation . + ?role vivo:roleRealizedIn ?presentation . ?presentation vitro:mostSpecificType ?subclass . - ?subclass rdfs:subClassOf core:Presentation . - ?subclass owl:equivalentClass core:Presentation . + ?subclass rdfs:subClassOf vivo:Presentation . + ?subclass owl:equivalentClass vivo:Presentation . } WHERE { { ?subject ?property ?role . - ?role core:roleRealizedIn ?presentation . + ?role vivo:roleRealizedIn ?presentation . ?presentation vitro:mostSpecificType ?subclass . - ?subclass rdfs:subClassOf core:Presentation + ?subclass rdfs:subClassOf vivo:Presentation } UNION { ?subject ?property ?role . - ?role core:roleRealizedIn ?presentation . + ?role vivo:roleRealizedIn ?presentation . ?presentation vitro:mostSpecificType ?subclass . - ?subclass owl:equivalentClass core:Presentation + ?subclass owl:equivalentClass vivo:Presentation } } - PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX vivo: <http://vivoweb.org/ontology/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> CONSTRUCT { ?subject ?property ?role . @@ -120,7 +142,7 @@ ?role ?roleProperty ?roleValue } UNION { ?subject ?property ?role . - ?role core:roleRealizedIn ?presentation . + ?role vivo:roleRealizedIn ?presentation . ?presentation rdfs:label ?presentationLabel } } @@ -128,38 +150,38 @@ PREFIX bibo: <http://purl.org/ontology/bibo/> - PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX vivo: <http://vivoweb.org/ontology/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> CONSTRUCT { ?subject ?property ?role . ?conference a bibo:Conference . - ?presentation core:eventWithin ?conference . - ?conference core:includesEvent ?presentation . + ?presentation vivo:eventWithin ?conference . + ?conference vivo:includesEvent ?presentation . ?conference rdfs:label ?conferenceLabel } WHERE { { ?subject ?property ?role . - ?role core:roleRealizedIn ?presentation . + ?role vivo:roleRealizedIn ?presentation . ?conference a bibo:Conference . - ?presentation core:eventWithin ?conference + ?presentation vivo:eventWithin ?conference } UNION { ?subject ?property ?role . - ?role core:roleRealizedIn ?presentation . + ?role vivo:roleRealizedIn ?presentation . ?conference a bibo:Conference . - ?presentation core:eventWithin ?conference . + ?presentation vivo:eventWithin ?conference . ?conference rdfs:label ?conferenceLabel } UNION { ?subject ?property ?role . - ?role core:roleRealizedIn ?presentation . + ?role vivo:roleRealizedIn ?presentation . ?conference a bibo:Conference . - ?conference core:includesEvent ?presentation + ?conference vivo:includesEvent ?presentation } UNION { ?subject ?property ?role . - ?role core:roleRealizedIn ?presentation . + ?role vivo:roleRealizedIn ?presentation . ?conference a bibo:Conference . - ?conference core:includesEvent ?presentation . + ?conference vivo:includesEvent ?presentation . ?conference rdfs:label ?conferenceLabel } } @@ -167,60 +189,143 @@ PREFIX bibo: <http://purl.org/ontology/bibo/> - PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX vivo: <http://vivoweb.org/ontology/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> CONSTRUCT { ?subject ?property ?role . - ?workshop core:eventWithin ?conference . - ?conference core:includesEvent ?workshop . + ?workshop vivo:eventWithin ?conference . + ?conference vivo:includesEvent ?workshop . ?conference a bibo:Conference . - ?presentation core:eventWithin ?workshop . - ?workshop core:includesEvent ?presentation . - ?conference rdfs:label ?conferenceLabel + ?presentation vivo:eventWithin ?workshop . + ?workshop vivo:includesEvent ?presentation . + ?conference rdfs:label ?conferenceLabel } WHERE { { ?subject ?property ?role . - ?role core:roleRealizedIn ?presentation . + ?role vivo:roleRealizedIn ?presentation . ?conference a bibo:Conference . - ?presentation core:eventWithin ?workshop . - ?workshop core:eventWithin ?conference + ?presentation vivo:eventWithin ?workshop . + ?workshop vivo:eventWithin ?conference } UNION { ?subject ?property ?role . - ?role core:roleRealizedIn ?presentation . + ?role vivo:roleRealizedIn ?presentation . ?conference a bibo:Conference . - ?presentation core:eventWithin ?workshop . - ?workshop core:eventWithin ?conference . + ?presentation vivo:eventWithin ?workshop . + ?workshop vivo:eventWithin ?conference . ?conference rdfs:label ?conferenceLabel } UNION { ?subject ?property ?role . - ?role core:roleRealizedIn ?presentation . + ?role vivo:roleRealizedIn ?presentation . ?conference a bibo:Conference . - ?conference core:includesEvent ?workshop . - ?workshop core:includesEvent ?presentation + ?conference vivo:includesEvent ?workshop . + ?workshop vivo:includesEvent ?presentation } UNION { ?subject ?property ?role . - ?role core:roleRealizedIn ?presentation . + ?role vivo:roleRealizedIn ?presentation . ?conference a bibo:Conference . - ?conference core:includesEvent ?workshop . - ?workshop core:includesEvent ?presentation . + ?conference vivo:includesEvent ?workshop . + ?workshop vivo:includesEvent ?presentation . ?conference rdfs:label ?conferenceLabel } } - PREFIX core: <http://vivoweb.org/ontology/core#> + PREFIX bibo: <http://purl.org/ontology/bibo/> + PREFIX vivo: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + + CONSTRUCT { + ?subject ?property ?role . + ?series a vivo:EventSeries . + ?presentation vivo:inEventSeries ?series . + ?series vivo:seriesForEvent ?presentation . + ?series rdfs:label ?seriesLabel + } WHERE { + + { + ?subject ?property ?role . + ?role vivo:roleRealizedIn ?presentation . + ?series a vivo:EventSeries . + ?presentation vivo:inEventSeries ?series + } UNION { + ?subject ?property ?role . + ?role vivo:roleRealizedIn ?presentation . + ?series a vivo:EventSeries . + ?presentation vivo:inEventSeries ?series . + ?series rdfs:label ?seriesLabel + } UNION { + ?subject ?property ?role . + ?role vivo:roleRealizedIn ?presentation . + ?series a vivo:EventSeries . + ?series vivo:seriesForEvent ?presentation + } UNION { + ?subject ?property ?role . + ?role vivo:roleRealizedIn ?presentation . + ?series a vivo:EventSeries . + ?series vivo:seriesForEvent ?presentation . + ?series rdfs:label ?seriesLabel + } + } + + + + PREFIX bibo: <http://purl.org/ontology/bibo/> + PREFIX vivo: <http://vivoweb.org/ontology/core#> + PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> + + CONSTRUCT { + ?subject ?property ?role . + ?workshop vivo:inEventSeries ?series . + ?series vivo:seriesForEvent ?workshop . + ?series a vivo:EventSeries . + ?presentation vivo:eventWithin ?workshop . + ?workshop vivo:includesEvent ?presentation . + ?series rdfs:label ?seriesLabel + } WHERE { + { + ?subject ?property ?role . + ?role vivo:roleRealizedIn ?presentation . + ?series a vivo:EventSeries . + ?presentation vivo:eventWithin ?workshop . + ?workshop vivo:inEventSeries ?series + } UNION { + ?subject ?property ?role . + ?role vivo:roleRealizedIn ?presentation . + ?series a vivo:EventSeries . + ?presentation vivo:eventWithin ?workshop . + ?workshop vivo:inEventSeries ?series . + ?series rdfs:label ?seriesLabel + } UNION { + ?subject ?property ?role . + ?role vivo:roleRealizedIn ?presentation . + ?series a vivo:EventSeries . + ?series vivo:seriesForEvent ?workshop . + ?workshop vivo:includesEvent ?presentation + } UNION { + ?subject ?property ?role . + ?role vivo:roleRealizedIn ?presentation . + ?series a vivo:EventSeries . + ?series vivo:seriesForEvent ?workshop . + ?workshop vivo:includesEvent ?presentation . + ?series rdfs:label ?seriesLabel + } + } + + + + PREFIX vivo: <http://vivoweb.org/ontology/core#> CONSTRUCT { ?subject ?property ?role . - ?role core:dateTimeInterval ?dateTimeInterval . - ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart + ?role vivo:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval vivo:start ?dateTimeStartValue . + ?dateTimeStartValue vivo:dateTime ?dateTimeStart } WHERE { ?subject ?property ?role . - ?role core:dateTimeInterval ?dateTimeInterval . - ?dateTimeInterval core:start ?dateTimeStartValue . - ?dateTimeStartValue core:dateTime ?dateTimeStart + ?role vivo:dateTimeInterval ?dateTimeInterval . + ?dateTimeInterval vivo:start ?dateTimeStartValue . + ?dateTimeStartValue vivo:dateTime ?dateTimeStart } diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-hasPresenterRole.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-hasPresenterRole.ftl index 20c4d5bc..2d8eb6c0 100644 --- a/productMods/templates/freemarker/body/partials/individual/propStatement-hasPresenterRole.ftl +++ b/productMods/templates/freemarker/body/partials/individual/propStatement-hasPresenterRole.ftl @@ -30,6 +30,8 @@ <#local conference> <#if statement.conference?has_content && statement.conferenceLabel?has_content> ${statement.conferenceLabel} + <#elseif statement.series?has_content && statement.seriesLabel?has_content> + ${statement.seriesLabel}