Merge branch 'develop' into feature/microformats
This commit is contained in:
commit
36227770a8
62 changed files with 1327 additions and 51309 deletions
|
@ -12,6 +12,8 @@ http://vivoweb.org/
|
||||||
### DuraSpace Wiki:
|
### DuraSpace Wiki:
|
||||||
https://wiki.duraspace.org/display/VIVO/
|
https://wiki.duraspace.org/display/VIVO/
|
||||||
|
|
||||||
|
Installation instructions for the latest release can be found at this location on the wiki: https://wiki.duraspace.org/display/VIVO/VIVO+Technical+Documentation
|
||||||
|
|
||||||
## Contact us
|
## Contact us
|
||||||
There are several ways to contact the VIVO community.
|
There are several ways to contact the VIVO community.
|
||||||
Whatever your interest, we would be pleased to hear from you.
|
Whatever your interest, we would be pleased to hear from you.
|
||||||
|
|
|
@ -3,33 +3,44 @@
|
||||||
:application
|
:application
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.application.ApplicationImpl> ,
|
a <java:edu.cornell.mannlib.vitro.webapp.application.ApplicationImpl> ,
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.modules.Application> ;
|
<java:edu.cornell.mannlib.vitro.webapp.modules.Application> ;
|
||||||
:hasSearchEngine :searchEngineWrapper ;
|
:hasSearchEngine :instrumentedSearchEngineWrapper ;
|
||||||
:hasImageProcessor :imageProcessor ;
|
:hasSearchIndexer :basicSearchIndexer ;
|
||||||
:hasFileStorage :fileStorage ;
|
:hasImageProcessor :jaiImageProcessor ;
|
||||||
:hasContentTripleSource :contentTripleSource ;
|
:hasFileStorage :ptiFileStorage ;
|
||||||
:hasConfigurationTripleSource :configurationTripleSource .
|
:hasContentTripleSource :sdbContentTripleSource ;
|
||||||
|
:hasConfigurationTripleSource :tdbConfigurationTripleSource ;
|
||||||
|
:hasTBoxReasonerModule :jfactTBoxReasonerModule .
|
||||||
|
|
||||||
:imageProcessor
|
:jaiImageProcessor
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.imageprocessor.jai.JaiImageProcessor> ,
|
a <java:edu.cornell.mannlib.vitro.webapp.imageprocessor.jai.JaiImageProcessor> ,
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.modules.imageProcessor.ImageProcessor> .
|
<java:edu.cornell.mannlib.vitro.webapp.modules.imageProcessor.ImageProcessor> .
|
||||||
|
|
||||||
:fileStorage
|
:ptiFileStorage
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.filestorage.impl.FileStorageImplWrapper> ,
|
a <java:edu.cornell.mannlib.vitro.webapp.filestorage.impl.FileStorageImplWrapper> ,
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.modules.fileStorage.FileStorage> .
|
<java:edu.cornell.mannlib.vitro.webapp.modules.fileStorage.FileStorage> .
|
||||||
|
|
||||||
:searchEngineWrapper
|
:instrumentedSearchEngineWrapper
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.searchengine.InstrumentedSearchEngineWrapper> ,
|
a <java:edu.cornell.mannlib.vitro.webapp.searchengine.InstrumentedSearchEngineWrapper> ,
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchEngine> ;
|
<java:edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchEngine> ;
|
||||||
:wraps :searchEngine .
|
:wraps :solrSearchEngine .
|
||||||
|
|
||||||
:searchEngine
|
:solrSearchEngine
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.searchengine.solr.SolrSearchEngine> ,
|
a <java:edu.cornell.mannlib.vitro.webapp.searchengine.solr.SolrSearchEngine> ,
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchEngine> .
|
<java:edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchEngine> .
|
||||||
|
|
||||||
:contentTripleSource
|
:basicSearchIndexer
|
||||||
|
a <java:edu.cornell.mannlib.vitro.webapp.searchindex.SearchIndexerImpl> ,
|
||||||
|
<java:edu.cornell.mannlib.vitro.webapp.modules.searchIndexer.SearchIndexer> ;
|
||||||
|
:threadPoolSize "10" .
|
||||||
|
|
||||||
|
:sdbContentTripleSource
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.triplesource.impl.sdb.ContentTripleSourceSDB> ,
|
a <java:edu.cornell.mannlib.vitro.webapp.triplesource.impl.sdb.ContentTripleSourceSDB> ,
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.modules.tripleSource.ContentTripleSource> .
|
<java:edu.cornell.mannlib.vitro.webapp.modules.tripleSource.ContentTripleSource> .
|
||||||
|
|
||||||
:configurationTripleSource
|
:tdbConfigurationTripleSource
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.triplesource.impl.tdb.ConfigurationTripleSourceTDB> ,
|
a <java:edu.cornell.mannlib.vitro.webapp.triplesource.impl.tdb.ConfigurationTripleSourceTDB> ,
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.modules.tripleSource.ConfigurationTripleSource> .
|
<java:edu.cornell.mannlib.vitro.webapp.modules.tripleSource.ConfigurationTripleSource> .
|
||||||
|
|
||||||
|
:jfactTBoxReasonerModule
|
||||||
|
a <java:edu.cornell.mannlib.vitro.webapp.tboxreasoner.impl.jfact.JFactTBoxReasonerModule> ,
|
||||||
|
<java:edu.cornell.mannlib.vitro.webapp.modules.tboxreasoner.TBoxReasonerModule> .
|
|
@ -86,20 +86,6 @@ GNU AGPL 3
|
||||||
licenses/agpl.LICENSE.txt
|
licenses/agpl.LICENSE.txt
|
||||||
|
|
||||||
iText
|
iText
|
||||||
pellet-cli
|
|
||||||
pellet-core
|
|
||||||
pellet-datatypes
|
|
||||||
pellet-dig
|
|
||||||
pellet-el
|
|
||||||
pellet-explanation
|
|
||||||
pellet
|
|
||||||
pellet-jena
|
|
||||||
pellet-modularity
|
|
||||||
pellet-owlapi
|
|
||||||
pellet-pellint
|
|
||||||
pellet-query
|
|
||||||
pellet-rules
|
|
||||||
pellet-test
|
|
||||||
|
|
||||||
|
|
||||||
GNU GPL 2
|
GNU GPL 2
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
# setting to point elsewhere in development environments).
|
# setting to point elsewhere in development environments).
|
||||||
# Examples:
|
# Examples:
|
||||||
# vitro.core.dir = ./vitro-core
|
# vitro.core.dir = ./vitro-core
|
||||||
# vitro.core.dir = ../vitro
|
# vitro.core.dir = ../Vitro
|
||||||
# vitro.core.dir = /usr/local/vitro/trunk
|
# vitro.core.dir = /usr/local/vitro/trunk
|
||||||
vitro.core.dir = ./vitro-core
|
vitro.core.dir = ./vitro-core
|
||||||
|
|
||||||
|
|
|
@ -881,4 +881,5 @@ editor_of_entry = editor de para
|
||||||
role_type = Tipo de papel
|
role_type = Tipo de papel
|
||||||
add_capitalized = Añadir
|
add_capitalized = Añadir
|
||||||
researcher_role = El papel del investigador
|
researcher_role = El papel del investigador
|
||||||
search_service_btn = Búsqueda el servicio
|
search_service_btn = Búsqueda el servicio
|
||||||
|
through_today = sobre la fecha de hoy
|
Binary file not shown.
|
@ -13,9 +13,6 @@ edu.cornell.mannlib.vitro.webapp.config.ConfigurationPropertiesSetup
|
||||||
|
|
||||||
edu.cornell.mannlib.vitro.webapp.config.ConfigurationPropertiesSmokeTests
|
edu.cornell.mannlib.vitro.webapp.config.ConfigurationPropertiesSmokeTests
|
||||||
|
|
||||||
# For the conversion from 1.6 or earlier (RDB) to 1.7 or later (TDB)
|
|
||||||
edu.cornell.mannlib.vitro.webapp.servlet.setup.GuardAgainstUnmigratedRDB
|
|
||||||
|
|
||||||
edu.cornell.mannlib.vitro.webapp.utils.developer.DeveloperSettings$Setup
|
edu.cornell.mannlib.vitro.webapp.utils.developer.DeveloperSettings$Setup
|
||||||
|
|
||||||
edu.cornell.mannlib.vitro.webapp.application.ApplicationImpl$ComponentsSetup
|
edu.cornell.mannlib.vitro.webapp.application.ApplicationImpl$ComponentsSetup
|
||||||
|
@ -36,7 +33,9 @@ edu.cornell.mannlib.vitro.webapp.servlet.setup.FileGraphSetup
|
||||||
|
|
||||||
# Invokes process to perform updates to align with ontology changes if needed -->
|
# Invokes process to perform updates to align with ontology changes if needed -->
|
||||||
edu.cornell.mannlib.vitro.webapp.servlet.setup.UpdateKnowledgeBase
|
edu.cornell.mannlib.vitro.webapp.servlet.setup.UpdateKnowledgeBase
|
||||||
|
edu.cornell.mannlib.vitro.webapp.migration.Release18Migrator
|
||||||
|
|
||||||
|
edu.cornell.mannlib.vitro.webapp.application.ApplicationImpl$ReasonersSetup
|
||||||
edu.cornell.mannlib.vitro.webapp.servlet.setup.SimpleReasonerSetup
|
edu.cornell.mannlib.vitro.webapp.servlet.setup.SimpleReasonerSetup
|
||||||
|
|
||||||
# Must run after JenaDataSourceSetup
|
# Must run after JenaDataSourceSetup
|
||||||
|
@ -46,7 +45,7 @@ edu.cornell.mannlib.vitro.webapp.auth.permissions.PermissionRegistry$Setup
|
||||||
|
|
||||||
edu.cornell.mannlib.vitro.webapp.auth.permissions.PermissionSetsSmokeTest
|
edu.cornell.mannlib.vitro.webapp.auth.permissions.PermissionSetsSmokeTest
|
||||||
|
|
||||||
edu.cornell.mannlib.vitro.webapp.auth.policy.bean.PropertyRestrictionPolicyHelper$Setup
|
edu.cornell.mannlib.vitro.webapp.auth.policy.bean.PropertyRestrictionBean$Setup
|
||||||
|
|
||||||
edu.cornell.mannlib.vitro.webapp.auth.policy.setup.CommonPolicyFamilySetup
|
edu.cornell.mannlib.vitro.webapp.auth.policy.setup.CommonPolicyFamilySetup
|
||||||
|
|
||||||
|
|
|
@ -819,6 +819,15 @@
|
||||||
<url-pattern>/showObjectPropertyHierarchy</url-pattern>
|
<url-pattern>/showObjectPropertyHierarchy</url-pattern>
|
||||||
</servlet-mapping>
|
</servlet-mapping>
|
||||||
|
|
||||||
|
<servlet>
|
||||||
|
<servlet-name>ListFauxPropertiesController</servlet-name>
|
||||||
|
<servlet-class>edu.cornell.mannlib.vitro.webapp.controller.freemarker.ListFauxPropertiesController</servlet-class>
|
||||||
|
</servlet>
|
||||||
|
<servlet-mapping>
|
||||||
|
<servlet-name>ListFauxPropertiesController</servlet-name>
|
||||||
|
<url-pattern>/listFauxProperties</url-pattern>
|
||||||
|
</servlet-mapping>
|
||||||
|
|
||||||
<servlet>
|
<servlet>
|
||||||
<servlet-name>ShowDataPropertyHierarchyController</servlet-name>
|
<servlet-name>ShowDataPropertyHierarchyController</servlet-name>
|
||||||
<servlet-class>edu.cornell.mannlib.vitro.webapp.controller.freemarker.ShowDataPropertyHierarchyController</servlet-class>
|
<servlet-class>edu.cornell.mannlib.vitro.webapp.controller.freemarker.ShowDataPropertyHierarchyController</servlet-class>
|
||||||
|
|
|
@ -24,17 +24,17 @@
|
||||||
?title WHERE {
|
?title WHERE {
|
||||||
|
|
||||||
?subject ?property ?object .
|
?subject ?property ?object .
|
||||||
|
?object a ?objectType .
|
||||||
LET (?localName := afn:localname(?object))
|
LET (?localName := afn:localname(?object))
|
||||||
|
|
||||||
OPTIONAL { ?object rdfs:label ?label }
|
OPTIONAL { ?object rdfs:label ?label }
|
||||||
|
|
||||||
OPTIONAL {
|
OPTIONAL {
|
||||||
# Get mostSpecificType only for Persons
|
# Get mostSpecificType only for Persons
|
||||||
?object a foaf:Person .
|
?object vitro:mostSpecificType ?subclass .
|
||||||
?object vitro:mostSpecificType ?typeUri .
|
?subclass rdfs:label ?type .
|
||||||
?typeUri rdfs:label ?type .
|
|
||||||
# Display only a mostSpecificType that belongs to a classgroup.
|
# Display only a mostSpecificType that belongs to a classgroup.
|
||||||
?typeUri vitro:inClassGroup ?classGroup .
|
?subclass vitro:inClassGroup ?classGroup .
|
||||||
?classGroup a vitro:ClassGroup
|
?classGroup a vitro:ClassGroup
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -44,7 +44,6 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
<collated>
|
<collated>
|
||||||
OPTIONAL { ?object a ?subclass }
|
|
||||||
FILTER ( afn:namespace(?subclass) != "http://vitro.mannlib.cornell.edu/ns/vitro/0.7#" )
|
FILTER ( afn:namespace(?subclass) != "http://vitro.mannlib.cornell.edu/ns/vitro/0.7#" )
|
||||||
</collated>
|
</collated>
|
||||||
|
|
||||||
|
@ -60,16 +59,15 @@
|
||||||
|
|
||||||
CONSTRUCT {
|
CONSTRUCT {
|
||||||
?subject ?property ?object .
|
?subject ?property ?object .
|
||||||
?object a ?subclass .
|
?object a ?objectType .
|
||||||
?object rdfs:label ?label .
|
?object rdfs:label ?label .
|
||||||
} WHERE {
|
} WHERE {
|
||||||
{
|
{
|
||||||
?subject ?property ?object .
|
?subject ?property ?object .
|
||||||
} UNION {
|
?object a ?objectType .
|
||||||
?subject ?property ?object .
|
|
||||||
?object a ?subclass .
|
|
||||||
} UNION {
|
} UNION {
|
||||||
?subject ?property ?object .
|
?subject ?property ?object .
|
||||||
|
?object a ?objectType .
|
||||||
?object rdfs:label ?label .
|
?object rdfs:label ?label .
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -84,24 +82,28 @@
|
||||||
|
|
||||||
CONSTRUCT {
|
CONSTRUCT {
|
||||||
?subject ?property ?object .
|
?subject ?property ?object .
|
||||||
?object vitro:mostSpecificType ?typeUri .
|
?object a ?objectType .
|
||||||
?typeUri vitro:inClassGroup ?classGroup .
|
?object vitro:mostSpecificType ?subclass .
|
||||||
|
?subclass vitro:inClassGroup ?classGroup .
|
||||||
?classGroup a vitro:ClassGroup .
|
?classGroup a vitro:ClassGroup .
|
||||||
?typeUri rdfs:label ?type .
|
?subclass rdfs:label ?type .
|
||||||
?object obo:ARG_2000028 ?vcard .
|
?object obo:ARG_2000028 ?vcard .
|
||||||
?vcard vcard:hasTitle ?titleObj .
|
?vcard vcard:hasTitle ?titleObj .
|
||||||
?titleObj vcard:title ?title
|
?titleObj vcard:title ?title
|
||||||
} WHERE {
|
} WHERE {
|
||||||
{
|
{
|
||||||
?subject ?property ?object .
|
?subject ?property ?object .
|
||||||
|
?object a ?objectType .
|
||||||
} UNION {
|
} UNION {
|
||||||
?subject ?property ?object .
|
?subject ?property ?object .
|
||||||
?object vitro:mostSpecificType ?typeUri .
|
?object a ?objectType .
|
||||||
?typeUri rdfs:label ?type .
|
?object vitro:mostSpecificType ?subclass .
|
||||||
?typeUri vitro:inClassGroup ?classGroup .
|
?subclass rdfs:label ?type .
|
||||||
|
?subclass vitro:inClassGroup ?classGroup .
|
||||||
?classGroup a vitro:ClassGroup
|
?classGroup a vitro:ClassGroup
|
||||||
} UNION {
|
} UNION {
|
||||||
?subject ?property ?object .
|
?subject ?property ?object .
|
||||||
|
?object a ?objectType .
|
||||||
?object obo:ARG_2000028 ?vcard .
|
?object obo:ARG_2000028 ?vcard .
|
||||||
?vcard vcard:hasTitle ?titleObj .
|
?vcard vcard:hasTitle ?titleObj .
|
||||||
?titleObj vcard:title ?title
|
?titleObj vcard:title ?title
|
||||||
|
@ -110,4 +112,4 @@
|
||||||
</query-construct>
|
</query-construct>
|
||||||
|
|
||||||
<template>propStatement-default.ftl</template>
|
<template>propStatement-default.ftl</template>
|
||||||
</list-view-config>
|
</list-view-config>
|
|
@ -167,13 +167,13 @@
|
||||||
PREFIX core: <http://vivoweb.org/ontology/core#>
|
PREFIX core: <http://vivoweb.org/ontology/core#>
|
||||||
CONSTRUCT {
|
CONSTRUCT {
|
||||||
?subject ?property ?edTraining .
|
?subject ?property ?edTraining .
|
||||||
?leaderRole core:dateTimeInterval ?dateTimeInterval .
|
?edTraining core:dateTimeInterval ?dateTimeInterval .
|
||||||
?dateTimeInterval core:start ?dateTimeStartValue .
|
?dateTimeInterval core:start ?dateTimeStartValue .
|
||||||
?dateTimeStartValue core:dateTime ?dateTimeStart
|
?dateTimeStartValue core:dateTime ?dateTimeStart
|
||||||
} WHERE {
|
} WHERE {
|
||||||
?subject ?property ?edTraining .
|
?subject ?property ?edTraining .
|
||||||
?edTraining a core:EducationalProcess .
|
?edTraining a core:EducationalProcess .
|
||||||
?leaderRole core:dateTimeInterval ?dateTimeInterval .
|
?edTraining core:dateTimeInterval ?dateTimeInterval .
|
||||||
?dateTimeInterval core:start ?dateTimeStartValue .
|
?dateTimeInterval core:start ?dateTimeStartValue .
|
||||||
?dateTimeStartValue core:dateTime ?dateTimeStart
|
?dateTimeStartValue core:dateTime ?dateTimeStart
|
||||||
}
|
}
|
||||||
|
@ -183,15 +183,15 @@
|
||||||
PREFIX core: <http://vivoweb.org/ontology/core#>
|
PREFIX core: <http://vivoweb.org/ontology/core#>
|
||||||
CONSTRUCT {
|
CONSTRUCT {
|
||||||
?subject ?property ?edTraining .
|
?subject ?property ?edTraining .
|
||||||
?leaderRole core:dateTimeInterval ?dateTimeInterval .
|
?edTraining core:dateTimeInterval ?dateTimeInterval .
|
||||||
?dateTimeInterval core:end ?dateTimeEndValue .
|
?dateTimeInterval core:end ?dateTimeEndValue .
|
||||||
?dateTimeStartValue core:dateTime ?dateTimeEnd
|
?dateTimeEndValue core:dateTime ?dateTimeEnd
|
||||||
} WHERE {
|
} WHERE {
|
||||||
?subject ?property ?edTraining .
|
?subject ?property ?edTraining .
|
||||||
?edTraining a core:EducationalProcess .
|
?edTraining a core:EducationalProcess .
|
||||||
?leaderRole core:dateTimeInterval ?dateTimeInterval .
|
?edTraining core:dateTimeInterval ?dateTimeInterval .
|
||||||
?dateTimeInterval core:end ?dateTimeEndValue .
|
?dateTimeInterval core:end ?dateTimeEndValue .
|
||||||
?dateTimeStartValue core:dateTime ?dateTimeEnd
|
?dateTimeEndValue core:dateTime ?dateTimeEnd
|
||||||
}
|
}
|
||||||
</query-construct>
|
</query-construct>
|
||||||
|
|
||||||
|
|
|
@ -134,7 +134,7 @@ $(document).ready(function(){
|
||||||
//Check to see if this index hasn't already been employed
|
//Check to see if this index hasn't already been employed
|
||||||
if(!indexFound) {
|
if(!indexFound) {
|
||||||
//if this index hasn't already been employed then utilize it
|
//if this index hasn't already been employed then utilize it
|
||||||
html += "<li><a href='" + urlsBase + "/individual"
|
html += "<li><a href='" + urlsBase + "/individual?uri="
|
||||||
+ academicDepartments[index].uri + "'>"
|
+ academicDepartments[index].uri + "'>"
|
||||||
+ academicDepartments[index].name + "</a></li>";
|
+ academicDepartments[index].name + "</a></li>";
|
||||||
//add this index to the set of already used indices
|
//add this index to the set of already used indices
|
||||||
|
@ -146,7 +146,7 @@ $(document).ready(function(){
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
for ( var i=0;i<deptNbr;i++) {
|
for ( var i=0;i<deptNbr;i++) {
|
||||||
html += "<li><a href='" + urlsBase + "/individual"
|
html += "<li><a href='" + urlsBase + "/individual?uri="
|
||||||
+ academicDepartments[i].uri + "'>"
|
+ academicDepartments[i].uri + "'>"
|
||||||
+ academicDepartments[i].name + "</a></li>";
|
+ academicDepartments[i].name + "</a></li>";
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
$(document).ready(function(){
|
$(document).ready(function(){
|
||||||
|
|
||||||
// ensures proper layout when an organization has its webpage link displayed as a thumnail.
|
// ensures proper layout when an organization has its webpage link displayed as a thumnail.
|
||||||
// there's a timing issue, so we can't check the length here, so check the role just to see
|
// there's a timing issue, so we can't check the length here, so check the role just to see
|
||||||
// if $('ul.webpages-withThumnails') exists
|
// if $('ul.webpages-withThumnails') exists
|
||||||
|
@ -48,7 +48,8 @@ $(document).ready(function(){
|
||||||
// var $propList = $('.property-list').not('>li>ul');
|
// var $propList = $('.property-list').not('>li>ul');
|
||||||
var $propList = $('.property-list:not(:has(>li>ul))');
|
var $propList = $('.property-list:not(:has(>li>ul))');
|
||||||
$propList.each(function() {
|
$propList.each(function() {
|
||||||
var $additionalItems = $(this).find('li:gt(4)');
|
var limit = $(this).attr("displayLimit");
|
||||||
|
var $additionalItems = $(this).find('li:gt(' + (limit - 1) + ')');
|
||||||
if ( $additionalItems.exists() ) {
|
if ( $additionalItems.exists() ) {
|
||||||
// create container for additional elements
|
// create container for additional elements
|
||||||
var $itemContainer = $('<div class="additionalItems" />').appendTo(this);
|
var $itemContainer = $('<div class="additionalItems" />').appendTo(this);
|
||||||
|
@ -66,7 +67,8 @@ $(document).ready(function(){
|
||||||
|
|
||||||
var $subPropList = $('.subclass-property-list');
|
var $subPropList = $('.subclass-property-list');
|
||||||
$subPropList.each(function() {
|
$subPropList.each(function() {
|
||||||
var $additionalItems = $(this).find('li:gt(4)');
|
var limit = $(this).parent().parent().attr("displayLimit");
|
||||||
|
var $additionalItems = $(this).find('li:gt(' + (limit - 1) + ')');
|
||||||
if ( $additionalItems.exists() ) {
|
if ( $additionalItems.exists() ) {
|
||||||
// create container for additional elements
|
// create container for additional elements
|
||||||
var $itemContainer = $('<div class="additionalItems" />').appendTo(this);
|
var $itemContainer = $('<div class="additionalItems" />').appendTo(this);
|
||||||
|
|
|
@ -49,7 +49,7 @@
|
||||||
<h2>${relatedSubject.relatingPredicateDomainPublic} ${i18n().for} ${relatedSubject.name}</h2>
|
<h2>${relatedSubject.relatingPredicateDomainPublic} ${i18n().for} ${relatedSubject.name}</h2>
|
||||||
<p><a href="${relatedSubject.url}" title="${i18n().return_to(relatedSubject.name)}">← ${i18n().return_to(relatedSubject.name)}</a></p>
|
<p><a href="${relatedSubject.url}" title="${i18n().return_to(relatedSubject.name)}">← ${i18n().return_to(relatedSubject.name)}</a></p>
|
||||||
<#else>
|
<#else>
|
||||||
<h1 class="vcard foaf-person fn" <#if !editable>style="float:left;border-right:1px solid #A6B1B0;"</#if>>
|
<h1 itemprop="name" class="vcard foaf-person fn" <#if !editable>style="float:left;border-right:1px solid #A6B1B0;"</#if>>
|
||||||
<#-- Label -->
|
<#-- Label -->
|
||||||
<@p.label individual editable labelCount localesCount/>
|
<@p.label individual editable labelCount localesCount/>
|
||||||
</h1>
|
</h1>
|
||||||
|
@ -64,9 +64,9 @@
|
||||||
</#if>
|
</#if>
|
||||||
<#list title.statements as statement>
|
<#list title.statements as statement>
|
||||||
<#if !editable >
|
<#if !editable >
|
||||||
<div id="titleContainer"><span class="display-title-not-editable">${statement.preferredTitle}</span></div>
|
<div id="titleContainer"><span itemprop="jobTitle" class="display-title-not-editable">${statement.preferredTitle}</span></div>
|
||||||
<#else>
|
<#else>
|
||||||
<span class="display-title-editable">${statement.preferredTitle}</span>
|
<span itemprop="jobTitle" class="display-title-editable">${statement.preferredTitle}</span>
|
||||||
<@p.editingLinks "${title.localName}" "${title.name}" statement editable title.rangeUri />
|
<@p.editingLinks "${title.localName}" "${title.name}" statement editable title.rangeUri />
|
||||||
</#if>
|
</#if>
|
||||||
</#list>
|
</#list>
|
||||||
|
|
|
@ -60,7 +60,7 @@
|
||||||
<#else>
|
<#else>
|
||||||
<#-- Image -->
|
<#-- Image -->
|
||||||
<div id="photo-wrapper">${individualImage}</div>
|
<div id="photo-wrapper">${individualImage}</div>
|
||||||
<h1 class="vcard foaf-person fn" <#if !editable>style="float:left;border-right:1px solid #A6B1B0;"</#if>>
|
<h1 itemprop="name" class="vcard foaf-person fn" <#if !editable>style="float:left;border-right:1px solid #A6B1B0;"</#if>>
|
||||||
<#-- Label -->
|
<#-- Label -->
|
||||||
<@p.label individual editable labelCount localesCount/>
|
<@p.label individual editable labelCount localesCount/>
|
||||||
</h1>
|
</h1>
|
||||||
|
@ -75,9 +75,9 @@
|
||||||
</#if>
|
</#if>
|
||||||
<#list title.statements as statement>
|
<#list title.statements as statement>
|
||||||
<#if !editable >
|
<#if !editable >
|
||||||
<div id="titleContainer"><span class="display-title-not-editable">${statement.preferredTitle}</span></div>
|
<div id="titleContainer"><span itemprop="jobTitle" class="display-title-not-editable">${statement.preferredTitle}</span></div>
|
||||||
<#else>
|
<#else>
|
||||||
<span class="display-title-editable">${statement.preferredTitle}</span>
|
<span itemprop="jobTitle" class="display-title-editable">${statement.preferredTitle}</span>
|
||||||
<@p.editingLinks "${title.localName}" "${title.name}" statement editable title.rangeUri />
|
<@p.editingLinks "${title.localName}" "${title.name}" statement editable title.rangeUri />
|
||||||
</#if>
|
</#if>
|
||||||
</#list>
|
</#list>
|
||||||
|
|
|
@ -4,16 +4,15 @@
|
||||||
|
|
||||||
This template must be self-contained and not rely on other variables set for the individual page, because it
|
This template must be self-contained and not rely on other variables set for the individual page, because it
|
||||||
is also used to generate the property statement during a deletion.
|
is also used to generate the property statement during a deletion.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<@showStatement statement />
|
<@showStatement statement />
|
||||||
|
|
||||||
<#macro showStatement statement>
|
<#macro showStatement statement>
|
||||||
<#-- The query retrieves a type only for Persons. Post-processing will remove all but one. -->
|
<#-- The query retrieves a type only for Persons. Post-processing will remove all but one. -->
|
||||||
<a href="${profileUrl(statement.uri("object"))}" title="${i18n().name}">${statement.label!statement.localName!}</a> ${statement.title!statement.type!}
|
<#if statement.subclass??>
|
||||||
</#macro>
|
<a href="${profileUrl(statement.uri("object"))}" title="${i18n().name}">${statement.label!statement.localName!}</a>
|
||||||
|
<#else>
|
||||||
|
<a href="${profileUrl(statement.uri("object"))}" title="${i18n().name}">${statement.label!statement.localName!}</a> ${statement.title!statement.type!}
|
||||||
|
</#if>
|
||||||
|
</#macro>
|
||||||
|
|
|
@ -9,11 +9,11 @@
|
||||||
<#if (individual.thumbUrl)??>
|
<#if (individual.thumbUrl)??>
|
||||||
<img src="${individual.thumbUrl}" width="90" alt="${individual.name}" />
|
<img src="${individual.thumbUrl}" width="90" alt="${individual.name}" />
|
||||||
<h1 class="thumb">
|
<h1 class="thumb">
|
||||||
<a href="${individual.profileUrl}" title="${i18n().view_profile_page_for} ${individual.name}}">${individual.name}</a>
|
<a href="${individual.profileUrl}" title="${i18n().view_profile_page_for} ${individual.name}">${individual.name}</a>
|
||||||
</h1>
|
</h1>
|
||||||
<#else>
|
<#else>
|
||||||
<h1>
|
<h1>
|
||||||
<a href="${individual.profileUrl}" title="${i18n().view_profile_page_for} ${individual.name}}">${individual.name}</a>
|
<a href="${individual.profileUrl}" title="${i18n().view_profile_page_for} ${individual.name}">${individual.name}</a>
|
||||||
</h1>
|
</h1>
|
||||||
</#if>
|
</#if>
|
||||||
|
|
||||||
|
|
|
@ -192,7 +192,7 @@ var i18nStrings = {
|
||||||
authorTypeText: '${i18n().author_capitalized}',
|
authorTypeText: '${i18n().author_capitalized}',
|
||||||
organizationTypeText: '${i18n().organization_capitalized}',
|
organizationTypeText: '${i18n().organization_capitalized}',
|
||||||
helpTextSelect: '${i18n().select_an_existing}',
|
helpTextSelect: '${i18n().select_an_existing}',
|
||||||
helptextAdd: '${i18n().or_add_new_one}'
|
helpTextAdd: '${i18n().or_add_new_one}'
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
|
@ -162,7 +162,7 @@ var i18nStrings = {
|
||||||
removeEditorshipAlert: '${i18n().error_processing_editor_request}',
|
removeEditorshipAlert: '${i18n().error_processing_editor_request}',
|
||||||
editorTypeText: '${i18n().editor_capitalized}',
|
editorTypeText: '${i18n().editor_capitalized}',
|
||||||
helpTextSelect: '${i18n().select_an_existing}',
|
helpTextSelect: '${i18n().select_an_existing}',
|
||||||
helptextAdd: '${i18n().or_add_new_one}'
|
helpTextAdd: '${i18n().or_add_new_one}'
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
|
@ -7,6 +7,10 @@
|
||||||
|
|
||||||
<#assign sparqlForAcFilter = editConfiguration.pageData.sparqlForAcFilter />
|
<#assign sparqlForAcFilter = editConfiguration.pageData.sparqlForAcFilter />
|
||||||
|
|
||||||
|
<#--This flag is for clearing the label field on submission for an existing object being selected from autocomplete.
|
||||||
|
Set this flag on the input acUriReceiver where you would like this behavior to occur. -->
|
||||||
|
<#assign flagClearLabelForExisting = "flagClearLabelForExisting" />
|
||||||
|
|
||||||
<h2>${i18n().create_own_concept_all_caps}</h2>
|
<h2>${i18n().create_own_concept_all_caps}</h2>
|
||||||
|
|
||||||
<@lvf.unsupportedBrowser urls.base />
|
<@lvf.unsupportedBrowser urls.base />
|
||||||
|
@ -26,7 +30,7 @@
|
||||||
<a href="" class="verifyMatch" title="${i18n().verify_match_capitalized}">(${i18n().verify_match_capitalized}</a> ${i18n().or}
|
<a href="" class="verifyMatch" title="${i18n().verify_match_capitalized}">(${i18n().verify_match_capitalized}</a> ${i18n().or}
|
||||||
<a href="#" class="changeSelection" id="changeSelection" title="${i18n().change_selection}">${i18n().change_selection})</a>
|
<a href="#" class="changeSelection" id="changeSelection" title="${i18n().change_selection}">${i18n().change_selection})</a>
|
||||||
</p>
|
</p>
|
||||||
<input class="acUriReceiver" type="hidden" id="conceptNode" name="conceptNode" value="" />
|
<input class="acUriReceiver" type="hidden" id="conceptNode" name="conceptNode" value="" ${flagClearLabelForExisting}="true"/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
@ -54,7 +58,8 @@
|
||||||
typeName: 'Concept',
|
typeName: 'Concept',
|
||||||
defaultTypeName: 'concept', // used in repair mode to generate button text
|
defaultTypeName: 'concept', // used in repair mode to generate button text
|
||||||
baseHref: '${urls.base}/individual?uri=',
|
baseHref: '${urls.base}/individual?uri=',
|
||||||
limitToConceptClasses:["http://www.w3.org/2004/02/skos/core#Concept"]
|
limitToConceptClasses:["http://www.w3.org/2004/02/skos/core#Concept"],
|
||||||
|
flagClearLabelForExisting: '${flagClearLabelForExisting}'
|
||||||
};
|
};
|
||||||
var i18nStrings = {
|
var i18nStrings = {
|
||||||
selectAnExisting: '${i18n().select_an_existing}',
|
selectAnExisting: '${i18n().select_an_existing}',
|
||||||
|
|
|
@ -39,7 +39,7 @@
|
||||||
<#if (class.uri?contains("FacultyMember")) >
|
<#if (class.uri?contains("FacultyMember")) >
|
||||||
<#assign foundClassGroup = true />
|
<#assign foundClassGroup = true />
|
||||||
<#if (class.individualCount > 0) >
|
<#if (class.individualCount > 0) >
|
||||||
<script>var facultyMemberCount = ${class.individualCount?string?replace(",","")};</script>
|
<script>var facultyMemberCount = ${class.individualCount?string?replace(",","")?replace(".","")};</script>
|
||||||
<#else>
|
<#else>
|
||||||
<script>var facultyMemberCount = 0;</script>
|
<script>var facultyMemberCount = 0;</script>
|
||||||
</#if>
|
</#if>
|
||||||
|
@ -165,8 +165,7 @@ var academicDepartments = [
|
||||||
<#list academicDeptDG as resultRow>
|
<#list academicDeptDG as resultRow>
|
||||||
<#assign uri = resultRow["theURI"] />
|
<#assign uri = resultRow["theURI"] />
|
||||||
<#assign label = resultRow["name"] />
|
<#assign label = resultRow["name"] />
|
||||||
<#assign localName = uri?substring(uri?last_index_of("/")) />
|
{"uri": "${uri?url}", "name": "${label}"}<#if (resultRow_has_next)>,</#if>
|
||||||
{"uri": "${localName}", "name": "${label}"}<#if (resultRow_has_next)>,</#if>
|
|
||||||
</#list>
|
</#list>
|
||||||
</#if>
|
</#if>
|
||||||
];
|
];
|
||||||
|
|
72
productMods/templates/freemarker/lib/lib-microformats.ftl
Normal file
72
productMods/templates/freemarker/lib/lib-microformats.ftl
Normal file
|
@ -0,0 +1,72 @@
|
||||||
|
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
|
||||||
|
|
||||||
|
<#-- Macros used to insert microformats into non-foaf person profiles via the individual-vitro.ftl template. -->
|
||||||
|
<#macro sectionSchema individual>
|
||||||
|
<#if individual.organization() >
|
||||||
|
<#list individual.mostSpecificTypes as type >
|
||||||
|
<#assign mst = type />
|
||||||
|
<#break>
|
||||||
|
</#list>
|
||||||
|
<@getItemType mst "organization"/>
|
||||||
|
<#elseif individual.event()>
|
||||||
|
itemscope itemtype="http://schema.org/Event"
|
||||||
|
<#elseif individual.infoContentEntity()>
|
||||||
|
<#list individual.mostSpecificTypes as type >
|
||||||
|
<#assign mst = type />
|
||||||
|
<#break>
|
||||||
|
</#list>
|
||||||
|
<@getItemType mst "infoContentEntity"/>
|
||||||
|
</#if>
|
||||||
|
</#macro>
|
||||||
|
|
||||||
|
<#macro getItemType type class >
|
||||||
|
<#-- The itemscope and full itemtype element and value are included here because Freemarker appends leading
|
||||||
|
and trailing white space to the returned value. -->
|
||||||
|
<#switch type>
|
||||||
|
<#case "Article">
|
||||||
|
itemscope itemtype="http://schema.org/Article"
|
||||||
|
<#break>
|
||||||
|
<#case "Academic Article">
|
||||||
|
itemscope itemtype="http://schema.org/ScholarlyArticle"
|
||||||
|
<#break>
|
||||||
|
<#case "Blog">
|
||||||
|
itemscope itemtype="http://schema.org/Blog"
|
||||||
|
<#break>
|
||||||
|
<#case "Blog Posting">
|
||||||
|
itemscope itemtype="http://schema.org/BlogPosting"
|
||||||
|
<#break>
|
||||||
|
<#case "Book">
|
||||||
|
itemscope itemtype="http://schema.org/Book"
|
||||||
|
<#break>
|
||||||
|
<#case "Dataset">
|
||||||
|
itemscope itemtype="http://schema.org/Dataset"
|
||||||
|
<#break>
|
||||||
|
<#case "Periodical">
|
||||||
|
itemscope itemtype="http://schema.org/Periodical"
|
||||||
|
<#break>
|
||||||
|
<#case "Review">
|
||||||
|
itemscope itemtype="http://schema.org/Review"
|
||||||
|
<#break>
|
||||||
|
<#case "Series">
|
||||||
|
itemscope itemtype="http://schema.org/Series"
|
||||||
|
<#break>
|
||||||
|
<#case "Webpage">
|
||||||
|
itemscope itemtype="http://schema.org/WebPage"
|
||||||
|
<#break>
|
||||||
|
<#case "Website">
|
||||||
|
itemscope itemtype="http://schema.org/WebSite"
|
||||||
|
<#break>
|
||||||
|
<#case "College">
|
||||||
|
itemscope itemtype="http://schema.org/CollegeOrUniversity"
|
||||||
|
<#break>
|
||||||
|
<#case "University">
|
||||||
|
itemscope itemtype="http://schema.org/CollegeOrUniversity"
|
||||||
|
<#break>
|
||||||
|
<#default>
|
||||||
|
<#if class == "organization" >
|
||||||
|
itemscope itemtype="http://schema.org/Organization"
|
||||||
|
<#else>
|
||||||
|
<#-- don't return anything if the info content entity has no matching subclass -->
|
||||||
|
</#if>
|
||||||
|
</#switch>
|
||||||
|
</#macro>
|
|
@ -186,7 +186,7 @@
|
||||||
$('#${sparklineContainerID} td.sparkline_number').text(totalPubs).css("font-weight", "bold").attr("class", "grey").append("<span style='color: #2485AE;'> " + pubDisplay + " <br/></span>");
|
$('#${sparklineContainerID} td.sparkline_number').text(totalPubs).css("font-weight", "bold").attr("class", "grey").append("<span style='color: #2485AE;'> " + pubDisplay + " <br/></span>");
|
||||||
|
|
||||||
var sparksText = ' ${i18n().from} <span class="sparkline_range">${sparklineVO.earliestYearConsidered?c}'
|
var sparksText = ' ${i18n().from} <span class="sparkline_range">${sparklineVO.earliestYearConsidered?c}'
|
||||||
+ ' ${i18n().to} ${sparklineVO.latestRenderedPublicationYear?c}</span>';
|
+ ' - ${sparklineVO.latestRenderedPublicationYear?c}</span>';
|
||||||
|
|
||||||
if (totalPubs !== totalPublicationCount) {
|
if (totalPubs !== totalPublicationCount) {
|
||||||
sparksText += ' (' + totalPublicationCount + ' ${i18n().total})';
|
sparksText += ' (' + totalPublicationCount + ' ${i18n().total})';
|
||||||
|
|
|
@ -62,7 +62,7 @@ var i18nStringsCoauthorship = {
|
||||||
coAuthorsString: '${i18n().co_authors_capitalized}',
|
coAuthorsString: '${i18n().co_authors_capitalized}',
|
||||||
authorString: '${i18n().author_capitalized}',
|
authorString: '${i18n().author_capitalized}',
|
||||||
publicationsWith: '${i18n().publications_with}',
|
publicationsWith: '${i18n().publications_with}',
|
||||||
publicationsString: '${i18n().publication_s_capitalized}',
|
publicationsString: "${i18n().publications_thru_today}",
|
||||||
coauthorsString: '${i18n().co_author_s_capitalized}'
|
coauthorsString: '${i18n().co_author_s_capitalized}'
|
||||||
};
|
};
|
||||||
var i18nStringsPersonLvl = {
|
var i18nStringsPersonLvl = {
|
||||||
|
|
|
@ -154,7 +154,7 @@
|
||||||
sparksText += "${i18n().years}";
|
sparksText += "${i18n().years}";
|
||||||
|
|
||||||
if (totalPubs !== totalPublicationCount) {
|
if (totalPubs !== totalPublicationCount) {
|
||||||
sparksText += ' (' + totalPublicationCount + ' ${i18n().total})' ;
|
//sparksText += ' (' + totalPublicationCount + ' ${i18n().total})' ;
|
||||||
}
|
}
|
||||||
sparksText += " <img class='infoIcon' src='" + infoIconSrc + "' height='16px' width='16px' alt='${i18n().info_icon}' title='${i18n().numbers_based_on_publications_in_vivo}' />" ;
|
sparksText += " <img class='infoIcon' src='" + infoIconSrc + "' height='16px' width='16px' alt='${i18n().info_icon}' title='${i18n().numbers_based_on_publications_in_vivo}' />" ;
|
||||||
|
|
||||||
|
@ -189,7 +189,7 @@
|
||||||
$('#${sparklineContainerID} td.sparkline_number').text(totalPubs).attr("class", "grey-text").append("<span style='color: #2485AE;'> "+ pubDisplay +"<br/></span>");
|
$('#${sparklineContainerID} td.sparkline_number').text(totalPubs).attr("class", "grey-text").append("<span style='color: #2485AE;'> "+ pubDisplay +"<br/></span>");
|
||||||
|
|
||||||
var sparksText = ' ${i18n().from} <span class="sparkline_range">${sparklineVO.earliestYearConsidered?c}'
|
var sparksText = ' ${i18n().from} <span class="sparkline_range">${sparklineVO.earliestYearConsidered?c}'
|
||||||
+ ' to ${sparklineVO.latestRenderedPublicationYear?c}</span>';
|
+ ' - ${sparklineVO.latestRenderedPublicationYear?c}</span>';
|
||||||
|
|
||||||
if (totalPubs !== totalPublicationCount) {
|
if (totalPubs !== totalPublicationCount) {
|
||||||
sparksText += ' (' + totalPublicationCount + ' ${i18n().total})';
|
sparksText += ' (' + totalPublicationCount + ' ${i18n().total})';
|
||||||
|
|
|
@ -1,46 +0,0 @@
|
||||||
@prefix : <http://vitro.mannlib.cornell.edu/ns/vitro/ApplicationSetup#> .
|
|
||||||
|
|
||||||
#
|
|
||||||
# Specify the SearchIndexExcluders and DocumentModifiers for VIVO.
|
|
||||||
# These are in addition to the ones specified for VIVO.
|
|
||||||
#
|
|
||||||
|
|
||||||
:vivoSearchExcluder_namespaceExcluder
|
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.ExcludeBasedOnNamespace> ,
|
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.SearchIndexExcluder> ;
|
|
||||||
:excludes
|
|
||||||
"http://purl.obolibrary.org/obo/" .
|
|
||||||
|
|
||||||
# ------------------------------------
|
|
||||||
|
|
||||||
:vivodocumentModifier_calculateParameters
|
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.CalculateParameters> ,
|
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.DocumentModifier> .
|
|
||||||
|
|
||||||
:vivodocumentModifier_valuesFromVcards
|
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.VIVOValuesFromVcards> ,
|
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.DocumentModifier> .
|
|
||||||
|
|
||||||
:vivodocumentModifier_ISFBasicFields
|
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.VivoISFBasicFields> ,
|
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.DocumentModifier> .
|
|
||||||
|
|
||||||
:vivodocumentModifier_ISFAdvisingFields
|
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.VivoISFAdvisingFields> ,
|
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.DocumentModifier> .
|
|
||||||
|
|
||||||
:vivodocumentModifier_ISFEducationFields
|
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.VivoISFEducationFields> ,
|
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.DocumentModifier> .
|
|
||||||
|
|
||||||
:vivodocumentModifier_ISFGrantFields
|
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.VivoISFGrantFields> ,
|
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.DocumentModifier> .
|
|
||||||
|
|
||||||
:vivodocumentModifier_ISFMemberFields
|
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.VivoISFMemberFields> ,
|
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.DocumentModifier> .
|
|
||||||
|
|
||||||
:vivodocumentModifier_informationResourceContextNodeFields
|
|
||||||
a <java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.VivoInformationResourceContextNodeFields> ,
|
|
||||||
<java:edu.cornell.mannlib.vitro.webapp.search.documentBuilding.DocumentModifier> .
|
|
92
rdf/display/everytime/searchIndexerConfigurationVivo.n3
Normal file
92
rdf/display/everytime/searchIndexerConfigurationVivo.n3
Normal file
|
@ -0,0 +1,92 @@
|
||||||
|
@prefix : <http://vitro.mannlib.cornell.edu/ns/vitro/ApplicationSetup#> .
|
||||||
|
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# Specify the SearchIndexExcluders, DocumentModifiers and IndexingUriFinders for VIVO.
|
||||||
|
# These are in addition to the ones specified for VIVO.
|
||||||
|
#
|
||||||
|
|
||||||
|
:vivoSearchExcluder_namespaceExcluder
|
||||||
|
a <java:edu.cornell.mannlib.vitro.webapp.searchindex.exclusions.ExcludeBasedOnNamespace> ,
|
||||||
|
<java:edu.cornell.mannlib.vitro.webapp.searchindex.exclusions.SearchIndexExcluder> ;
|
||||||
|
:excludes
|
||||||
|
"http://purl.obolibrary.org/obo/" .
|
||||||
|
|
||||||
|
# ------------------------------------
|
||||||
|
|
||||||
|
:extension_forContextNodes
|
||||||
|
a <java:edu.cornell.mannlib.vitro.webapp.searchindex.indexing.IndexingUriFinder> ,
|
||||||
|
<java:edu.cornell.mannlib.vitro.webapp.searchindex.documentBuilding.DocumentModifier> ,
|
||||||
|
<java:edu.cornell.mannlib.vitro.webapp.searchindex.extensions.LabelsAcrossContextNodes> .
|
||||||
|
|
||||||
|
# ------------------------------------
|
||||||
|
|
||||||
|
:vivodocumentModifier_calculateParameters
|
||||||
|
a <java:edu.cornell.mannlib.vitro.webapp.searchindex.documentBuilding.CalculateParameters> ,
|
||||||
|
<java:edu.cornell.mannlib.vitro.webapp.searchindex.documentBuilding.DocumentModifier> .
|
||||||
|
|
||||||
|
# ------------------------------------
|
||||||
|
|
||||||
|
:vivoUriFinder_VCard
|
||||||
|
a <java:edu.cornell.mannlib.vitro.webapp.searchindex.indexing.IndexingUriFinder> ,
|
||||||
|
<java:edu.cornell.mannlib.vitro.webapp.searchindex.indexing.SelectQueryUriFinder> ;
|
||||||
|
rdfs:label "Preferred title" ;
|
||||||
|
:hasPredicateRestriction "http://www.w3.org/2006/vcard/ns#title" ;
|
||||||
|
:hasPredicateRestriction "http://www.w3.org/2006/vcard/ns#email" ;
|
||||||
|
:hasSelectQuery """
|
||||||
|
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
|
||||||
|
PREFIX obo: <http://purl.obolibrary.org/obo/>
|
||||||
|
SELECT ?uri
|
||||||
|
WHERE {
|
||||||
|
?uri obo:ARG_2000028 ?card .
|
||||||
|
?card a vcard:Individual .
|
||||||
|
?card vcard:hasTitle ?subject .
|
||||||
|
}
|
||||||
|
""" ;
|
||||||
|
:hasSelectQuery """
|
||||||
|
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
|
||||||
|
PREFIX obo: <http://purl.obolibrary.org/obo/>
|
||||||
|
SELECT ?uri
|
||||||
|
WHERE {
|
||||||
|
?uri obo:ARG_2000028 ?card .
|
||||||
|
?card a vcard:Individual .
|
||||||
|
?card vcard:hasEmail ?subject .
|
||||||
|
}
|
||||||
|
""" .
|
||||||
|
|
||||||
|
:vivodocumentModifier_PreferredTitle
|
||||||
|
a <java:edu.cornell.mannlib.vitro.webapp.searchindex.documentBuilding.SelectQueryDocumentModifier> ,
|
||||||
|
<java:edu.cornell.mannlib.vitro.webapp.searchindex.documentBuilding.DocumentModifier> ;
|
||||||
|
rdfs:label "Preferred title" ;
|
||||||
|
:hasTargetField "ALLTEXT" ;
|
||||||
|
:hasTargetField "ALLTEXTUNSTEMMED" ;
|
||||||
|
:hasTargetField "PREFERRED_TITLE" ;
|
||||||
|
:hasSelectQuery """
|
||||||
|
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
|
||||||
|
PREFIX obo: <http://purl.obolibrary.org/obo/>
|
||||||
|
SELECT ?title
|
||||||
|
WHERE {
|
||||||
|
?uri obo:ARG_2000028 ?card .
|
||||||
|
?card a vcard:Individual .
|
||||||
|
?card vcard:hasTitle ?titleHolder .
|
||||||
|
?titleHolder vcard:title ?title .
|
||||||
|
}
|
||||||
|
""" .
|
||||||
|
|
||||||
|
:vivodocumentModifier_EmailAddress
|
||||||
|
a <java:edu.cornell.mannlib.vitro.webapp.searchindex.documentBuilding.SelectQueryDocumentModifier> ,
|
||||||
|
<java:edu.cornell.mannlib.vitro.webapp.searchindex.documentBuilding.DocumentModifier> ;
|
||||||
|
rdfs:label "Email address" ;
|
||||||
|
:hasSelectQuery """
|
||||||
|
PREFIX vcard: <http://www.w3.org/2006/vcard/ns#>
|
||||||
|
PREFIX obo: <http://purl.obolibrary.org/obo/>
|
||||||
|
SELECT ?email
|
||||||
|
WHERE {
|
||||||
|
?uri obo:ARG_2000028 ?card .
|
||||||
|
?card a vcard:Individual .
|
||||||
|
?card vcard:hasEmail ?emailHolder .
|
||||||
|
?emailHolder vcard:email ?email .
|
||||||
|
}
|
||||||
|
""" .
|
||||||
|
|
|
@ -23,6 +23,7 @@ local:personInPositionContext a :ConfigContext ;
|
||||||
:qualifiedBy vivo:Position .
|
:qualifiedBy vivo:Position .
|
||||||
|
|
||||||
local:personInPositionConfig a :ObjectPropertyDisplayConfig ;
|
local:personInPositionConfig a :ObjectPropertyDisplayConfig ;
|
||||||
|
rdfs:label "personInPosition"@en-US;
|
||||||
:displayName "positions" ;
|
:displayName "positions" ;
|
||||||
:listViewConfigFile "listViewConfig-personInPosition.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-personInPosition.xml"^^xsd:string ;
|
||||||
:propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupaffiliation> ;
|
:propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupaffiliation> ;
|
||||||
|
@ -39,6 +40,7 @@ local:organizationForPositionContext a :ConfigContext ;
|
||||||
:qualifiedBy vivo:Position .
|
:qualifiedBy vivo:Position .
|
||||||
|
|
||||||
local:organizationForPositionConfig a :ObjectPropertyDisplayConfig ;
|
local:organizationForPositionConfig a :ObjectPropertyDisplayConfig ;
|
||||||
|
rdfs:label "organizationForPosition"@en-US;
|
||||||
:displayName "people" ;
|
:displayName "people" ;
|
||||||
:listViewConfigFile "listViewConfig-organizationForPosition.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-organizationForPosition.xml"^^xsd:string ;
|
||||||
:propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupaffiliation> ;
|
:propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupaffiliation> ;
|
||||||
|
@ -57,6 +59,7 @@ local:authorInAuthorshipContext a :ConfigContext ;
|
||||||
|
|
||||||
local:authorInAuthorshipConfig a :ObjectPropertyDisplayConfig ;
|
local:authorInAuthorshipConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-authorInAuthorship.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-authorInAuthorship.xml"^^xsd:string ;
|
||||||
|
rdfs:label "authorInAuthorship"@en-US;
|
||||||
:displayName "selected publications" ;
|
:displayName "selected publications" ;
|
||||||
vitro:collateBySubclassAnnot
|
vitro:collateBySubclassAnnot
|
||||||
"true"^^xsd:boolean;
|
"true"^^xsd:boolean;
|
||||||
|
@ -74,6 +77,7 @@ local:orgInAuthorshipContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgInAuthorshipConfig a :ObjectPropertyDisplayConfig ;
|
local:orgInAuthorshipConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-authorInAuthorship.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-authorInAuthorship.xml"^^xsd:string ;
|
||||||
|
rdfs:label "organizationInAuthorship"@en-US;
|
||||||
:displayName "selected publications" ;
|
:displayName "selected publications" ;
|
||||||
vitro:collateBySubclassAnnot
|
vitro:collateBySubclassAnnot
|
||||||
"true"^^xsd:boolean;
|
"true"^^xsd:boolean;
|
||||||
|
@ -93,7 +97,8 @@ local:hasServiceProviderRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasServiceProviderRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasServiceProviderRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
||||||
:displayName "professional service activities" ;
|
rdfs:label "hasServiceProviderRole"@en-US;
|
||||||
|
:displayName "professional service activities" ;
|
||||||
vitro:displayRankAnnot 32;
|
vitro:displayRankAnnot 32;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
vitro:prohibitedFromUpdateBelowRoleLevelAnnot role:public ;
|
vitro:prohibitedFromUpdateBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -109,6 +114,7 @@ local:hasClinicalRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasClinicalRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasClinicalRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-hasClinicalActivity.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-hasClinicalActivity.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasClinicalRole"@en-US;
|
||||||
:displayName "clinical activities" ;
|
:displayName "clinical activities" ;
|
||||||
vitro:displayRankAnnot 70;
|
vitro:displayRankAnnot 70;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -125,6 +131,7 @@ local:orgHasClinicalRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgHasClinicalRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:orgHasClinicalRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-hasClinicalActivity.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-hasClinicalActivity.xml"^^xsd:string ;
|
||||||
|
rdfs:label "organizationHasClinicalRole"@en-US;
|
||||||
:displayName "clinical activities" ;
|
:displayName "clinical activities" ;
|
||||||
vitro:displayRankAnnot 70;
|
vitro:displayRankAnnot 70;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -141,6 +148,7 @@ local:hasLeaderRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasLeaderRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasLeaderRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasLeaderRole"@en-US;
|
||||||
:displayName "head of" ;
|
:displayName "head of" ;
|
||||||
vitro:displayRankAnnot 30;
|
vitro:displayRankAnnot 30;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -157,6 +165,7 @@ local:orgHasLeaderRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgHasLeaderRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:orgHasLeaderRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
||||||
|
rdfs:label "organizationHasLeaderRole"@en-US;
|
||||||
:displayName "lead organization of" ;
|
:displayName "lead organization of" ;
|
||||||
vitro:displayRankAnnot 30;
|
vitro:displayRankAnnot 30;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -173,6 +182,7 @@ local:hasMemberRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasMemberRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasMemberRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasMemberRole"@en-US;
|
||||||
:displayName "member of" ;
|
:displayName "member of" ;
|
||||||
vitro:displayRankAnnot 50;
|
vitro:displayRankAnnot 50;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -189,6 +199,7 @@ local:orgHasMemberRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgHasMemberRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:orgHasMemberRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
||||||
|
rdfs:label "organizationHasMemberRole"@en-US;
|
||||||
:displayName "member of" ;
|
:displayName "member of" ;
|
||||||
vitro:displayRankAnnot 50;
|
vitro:displayRankAnnot 50;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -205,6 +216,7 @@ local:hasTeacherRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasTeacherRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasTeacherRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasTeacherRole"@en-US;
|
||||||
:displayName "teaching activities" ;
|
:displayName "teaching activities" ;
|
||||||
vitro:displayRankAnnot 20;
|
vitro:displayRankAnnot 20;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -221,6 +233,7 @@ local:hasEditorRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasEditorRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasEditorRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-hasEditorRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-hasEditorRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasEditorRole"@en-US;
|
||||||
:displayName "collection or series editor for" ;
|
:displayName "collection or series editor for" ;
|
||||||
vitro:displayRankAnnot 15;
|
vitro:displayRankAnnot 15;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -237,6 +250,7 @@ local:groupHasEditorRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:groupHasEditorRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:groupHasEditorRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-hasEditorRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-hasEditorRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "groupHasEditorRole"@en-US;
|
||||||
:displayName "collection or series editorial group for" ;
|
:displayName "collection or series editorial group for" ;
|
||||||
vitro:displayRankAnnot 15;
|
vitro:displayRankAnnot 15;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -253,6 +267,7 @@ local:hasReviewerRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasReviewerRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasReviewerRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-hasReviewerRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-hasReviewerRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasReviewerRole"@en-US;
|
||||||
:displayName "reviewer of" ;
|
:displayName "reviewer of" ;
|
||||||
vitro:displayRankAnnot 18;
|
vitro:displayRankAnnot 18;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -269,6 +284,7 @@ local:hasOrganizerRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasOrganizerRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasOrganizerRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasOrganizerRole"@en-US;
|
||||||
:displayName "organizer of event" ;
|
:displayName "organizer of event" ;
|
||||||
vitro:displayRankAnnot 27;
|
vitro:displayRankAnnot 27;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -285,6 +301,7 @@ local:orgHasOrganizerRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgHasOrganizerRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:orgHasOrganizerRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ;
|
||||||
|
rdfs:label "orgHasOrganizerRole"@en-US;
|
||||||
:displayName "convener of event" ;
|
:displayName "convener of event" ;
|
||||||
vitro:displayRankAnnot 80;
|
vitro:displayRankAnnot 80;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -301,6 +318,7 @@ local:hasOutreachProviderRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasOutreachProviderRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasOutreachProviderRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasOutreachProviderRole"@en-US;
|
||||||
:displayName "outreach and community service activities" ;
|
:displayName "outreach and community service activities" ;
|
||||||
vitro:displayRankAnnot 50;
|
vitro:displayRankAnnot 50;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -317,6 +335,7 @@ local:orgHasOutreachProviderRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgHasOutreachProviderRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:orgHasOutreachProviderRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-roleContributesTo.xml"^^xsd:string ;
|
||||||
|
rdfs:label "orgHasOutreachProviderRole"@en-US;
|
||||||
:displayName "outreach and community service activities" ;
|
:displayName "outreach and community service activities" ;
|
||||||
vitro:displayRankAnnot 50;
|
vitro:displayRankAnnot 50;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -333,6 +352,7 @@ local:hasAttendeeRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasAttendeeRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasAttendeeRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-hasAttendeeRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-hasAttendeeRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasAttendeeRole"@en-US;
|
||||||
:displayName "attended event" ;
|
:displayName "attended event" ;
|
||||||
vitro:displayRankAnnot 85;
|
vitro:displayRankAnnot 85;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -349,6 +369,7 @@ local:orgHasAttendeeRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgHasAttendeeRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:orgHasAttendeeRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-hasAttendeeRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-hasAttendeeRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "orgHasAttendeeRole"@en-US;
|
||||||
:displayName "attended event" ;
|
:displayName "attended event" ;
|
||||||
vitro:displayRankAnnot 85;
|
vitro:displayRankAnnot 85;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -365,6 +386,7 @@ local:hasResearcherRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasResearcherRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasResearcherRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-researchActivities.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-researchActivities.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasResearcherRole"@en-US;
|
||||||
:displayName "other research activities" ;
|
:displayName "other research activities" ;
|
||||||
vitro:displayRankAnnot 35;
|
vitro:displayRankAnnot 35;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -381,6 +403,7 @@ local:hasInvestigatorRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasInvestigatorRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasInvestigatorRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-hasInvestigatorRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-hasInvestigatorRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasInvestigatorRole"@en-US;
|
||||||
:displayName "investigator on" ;
|
:displayName "investigator on" ;
|
||||||
vitro:displayRankAnnot 30;
|
vitro:displayRankAnnot 30;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -396,6 +419,7 @@ local:hasPrincipalInvestigatorRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasPrincipalInvestigatorRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasPrincipalInvestigatorRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-hasPrincipalInvestigatorRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-hasPrincipalInvestigatorRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasPrincipalInvestigatorRole"@en-US;
|
||||||
:displayName "principal investigator on" ;
|
:displayName "principal investigator on" ;
|
||||||
vitro:displayRankAnnot 20;
|
vitro:displayRankAnnot 20;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -411,6 +435,7 @@ local:hasCo-PrincipalInvestigatorRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasCo-PrincipalInvestigatorRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasCo-PrincipalInvestigatorRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-hasCoPrincipalInvestigatorRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-hasCoPrincipalInvestigatorRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasCo-PrincipalInvestigatorRole"@en-US;
|
||||||
:displayName "co-principal investigator on" ;
|
:displayName "co-principal investigator on" ;
|
||||||
vitro:displayRankAnnot 25;
|
vitro:displayRankAnnot 25;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -426,6 +451,7 @@ local:hasPresenterRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasPresenterRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:hasPresenterRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-hasPresenterRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-hasPresenterRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasPresenterRole"@en-US;
|
||||||
:displayName "presentations" ;
|
:displayName "presentations" ;
|
||||||
vitro:collateBySubclassAnnot
|
vitro:collateBySubclassAnnot
|
||||||
"true"^^xsd:boolean;
|
"true"^^xsd:boolean;
|
||||||
|
@ -443,6 +469,7 @@ local:orgHasPresenterRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgHasPresenterRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:orgHasPresenterRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-hasPresenterRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-hasPresenterRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "organizationHasPresenterRole"@en-US;
|
||||||
:displayName "presentations" ;
|
:displayName "presentations" ;
|
||||||
vitro:collateBySubclassAnnot
|
vitro:collateBySubclassAnnot
|
||||||
"true"^^xsd:boolean;
|
"true"^^xsd:boolean;
|
||||||
|
@ -462,6 +489,7 @@ local:awardOrHonorContext a :ConfigContext ;
|
||||||
|
|
||||||
local:awardOrHonorConfig a :ObjectPropertyDisplayConfig ;
|
local:awardOrHonorConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-awardOrHonor.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-awardOrHonor.xml"^^xsd:string ;
|
||||||
|
rdfs:label "awardOrHonor"@en-US;
|
||||||
:displayName "awards and honors" ;
|
:displayName "awards and honors" ;
|
||||||
vitro:displayRankAnnot 20;
|
vitro:displayRankAnnot 20;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -477,6 +505,7 @@ local:orgHasAwardOrHonorContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgHasAwardOrHonorConfig a :ObjectPropertyDisplayConfig ;
|
local:orgHasAwardOrHonorConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-awardOrHonor.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-awardOrHonor.xml"^^xsd:string ;
|
||||||
|
rdfs:label "organizationHasAwardOrHonor"@en-US;
|
||||||
:displayName "awards and honors received" ;
|
:displayName "awards and honors received" ;
|
||||||
vitro:displayRankAnnot 75;
|
vitro:displayRankAnnot 75;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -492,6 +521,7 @@ local:educationalTrainingContext a :ConfigContext ;
|
||||||
|
|
||||||
local:educationalTrainingConfig a :ObjectPropertyDisplayConfig ;
|
local:educationalTrainingConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-educationalTraining.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-educationalTraining.xml"^^xsd:string ;
|
||||||
|
rdfs:label "educationalTraining"@en-US;
|
||||||
:displayName "education and training" ;
|
:displayName "education and training" ;
|
||||||
vitro:displayRankAnnot 10;
|
vitro:displayRankAnnot 10;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -508,6 +538,7 @@ local:educationalProcessPersonContext a :ConfigContext ;
|
||||||
|
|
||||||
local:educationalProcessPersonConfig a :ObjectPropertyDisplayConfig ;
|
local:educationalProcessPersonConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "educationalProcessPerson"@en-US;
|
||||||
:displayName "education and training of" ;
|
:displayName "education and training of" ;
|
||||||
vitro:displayRankAnnot 10;
|
vitro:displayRankAnnot 10;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -523,6 +554,7 @@ local:educationalProcessOrgContext a :ConfigContext ;
|
||||||
|
|
||||||
local:educationalProcessOrgConfig a :ObjectPropertyDisplayConfig ;
|
local:educationalProcessOrgConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "educationalProcessOrganization"@en-US;
|
||||||
:displayName "educational organization" ;
|
:displayName "educational organization" ;
|
||||||
vitro:displayRankAnnot 15;
|
vitro:displayRankAnnot 15;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -538,6 +570,7 @@ local:educationalProcessDegreeContext a :ConfigContext ;
|
||||||
|
|
||||||
local:educationalProcessDegreeConfig a :ObjectPropertyDisplayConfig ;
|
local:educationalProcessDegreeConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-degreeEarned.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-degreeEarned.xml"^^xsd:string ;
|
||||||
|
rdfs:label "educationalProcessDegree"@en-US;
|
||||||
:displayName "degree earned" ;
|
:displayName "degree earned" ;
|
||||||
vitro:displayRankAnnot 20;
|
vitro:displayRankAnnot 20;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -553,6 +586,7 @@ local:organizationForTrainingContext a :ConfigContext ;
|
||||||
|
|
||||||
local:organizationForTrainingConfig a :ObjectPropertyDisplayConfig ;
|
local:organizationForTrainingConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-organizationForTraining.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-organizationForTraining.xml"^^xsd:string ;
|
||||||
|
rdfs:label "organizationForTraining"@en-US;
|
||||||
:displayName "organization for training" ;
|
:displayName "organization for training" ;
|
||||||
vitro:displayRankAnnot 1;
|
vitro:displayRankAnnot 1;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:nobody ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:nobody ;
|
||||||
|
@ -568,6 +602,7 @@ local:adviseeRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:adviseeRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:adviseeRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-adviseeIn.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-adviseeIn.xml"^^xsd:string ;
|
||||||
|
rdfs:label "adviseeRole"@en-US;
|
||||||
:displayName "advisee of" ;
|
:displayName "advisee of" ;
|
||||||
vitro:collateBySubclassAnnot
|
vitro:collateBySubclassAnnot
|
||||||
"true"^^xsd:boolean;
|
"true"^^xsd:boolean;
|
||||||
|
@ -585,6 +620,7 @@ local:advisorRoleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:advisorRoleConfig a :ObjectPropertyDisplayConfig ;
|
local:advisorRoleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-advisorIn.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-advisorIn.xml"^^xsd:string ;
|
||||||
|
rdfs:label "advisorRole"@en-US;
|
||||||
:displayName "advisees" ;
|
:displayName "advisees" ;
|
||||||
vitro:collateBySubclassAnnot
|
vitro:collateBySubclassAnnot
|
||||||
"true"^^xsd:boolean;
|
"true"^^xsd:boolean;
|
||||||
|
@ -602,6 +638,7 @@ local:informationResourceInAuthorshipContext a :ConfigContext ;
|
||||||
|
|
||||||
local:informationResourceInAuthorshipConfig a :ObjectPropertyDisplayConfig ;
|
local:informationResourceInAuthorshipConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-informationResourceInAuthorship.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-informationResourceInAuthorship.xml"^^xsd:string ;
|
||||||
|
rdfs:label "informationResourceInAuthorship"@en-US;
|
||||||
:displayName "authors" ;
|
:displayName "authors" ;
|
||||||
vitro:displayRankAnnot 10;
|
vitro:displayRankAnnot 10;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -617,6 +654,7 @@ local:informationResourceInEditorshipContext a :ConfigContext ;
|
||||||
|
|
||||||
local:informationResourceInEditorshipConfig a :ObjectPropertyDisplayConfig ;
|
local:informationResourceInEditorshipConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-informationResourceInEditorship.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-informationResourceInEditorship.xml"^^xsd:string ;
|
||||||
|
rdfs:label "informationResourceInEditorship"@en-US;
|
||||||
:displayName "editors" ;
|
:displayName "editors" ;
|
||||||
vitro:displayRankAnnot 12;
|
vitro:displayRankAnnot 12;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -632,6 +670,7 @@ local:editorOfContext a :ConfigContext ;
|
||||||
|
|
||||||
local:editorOfConfig a :ObjectPropertyDisplayConfig ;
|
local:editorOfConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-editorship.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-editorship.xml"^^xsd:string ;
|
||||||
|
rdfs:label "editorOf"@en-US;
|
||||||
:displayName "editor of" ;
|
:displayName "editor of" ;
|
||||||
vitro:displayRankAnnot 20;
|
vitro:displayRankAnnot 20;
|
||||||
vitro:collateBySubclassAnnot
|
vitro:collateBySubclassAnnot
|
||||||
|
@ -649,6 +688,7 @@ local:issuedCredentialContext a :ConfigContext ;
|
||||||
|
|
||||||
local:issuedCredentialConfig a :ObjectPropertyDisplayConfig ;
|
local:issuedCredentialConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-issuedCredential.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-issuedCredential.xml"^^xsd:string ;
|
||||||
|
rdfs:label "issuedCredential"@en-US;
|
||||||
:displayName "credentials" ;
|
:displayName "credentials" ;
|
||||||
vitro:displayRankAnnot 12;
|
vitro:displayRankAnnot 12;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -664,6 +704,7 @@ local:grantAdministeredByContext a :ConfigContext ;
|
||||||
|
|
||||||
local:grantAdministeredByConfig a :ObjectPropertyDisplayConfig ;
|
local:grantAdministeredByConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-grantAdministeredBy.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-grantAdministeredBy.xml"^^xsd:string ;
|
||||||
|
rdfs:label "grantAdministeredBy"@en-US;
|
||||||
:displayName "administered by" ;
|
:displayName "administered by" ;
|
||||||
vitro:displayRankAnnot 16;
|
vitro:displayRankAnnot 16;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -679,6 +720,7 @@ local:contractAdministeredByContext a :ConfigContext ;
|
||||||
|
|
||||||
local:contractAdministeredByConfig a :ObjectPropertyDisplayConfig ;
|
local:contractAdministeredByConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-grantAdministeredBy.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-grantAdministeredBy.xml"^^xsd:string ;
|
||||||
|
rdfs:label "contractAdministeredBy"@en-US;
|
||||||
:displayName "administered by" ;
|
:displayName "administered by" ;
|
||||||
vitro:displayRankAnnot 16;
|
vitro:displayRankAnnot 16;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -693,6 +735,7 @@ local:orgAdministersGrantContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgAdministersGrantConfig a :ObjectPropertyDisplayConfig ;
|
local:orgAdministersGrantConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-organizationAdministersGrant.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-organizationAdministersGrant.xml"^^xsd:string ;
|
||||||
|
rdfs:label "orgAdministersGrant"@en-US;
|
||||||
:displayName "administers grant" ;
|
:displayName "administers grant" ;
|
||||||
vitro:displayRankAnnot 62;
|
vitro:displayRankAnnot 62;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -716,6 +759,7 @@ local:hasCollaboratorConfig a :ObjectPropertyDisplayConfig ;
|
||||||
vitro:customEntryFormAnnot
|
vitro:customEntryFormAnnot
|
||||||
"edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.AutocompleteObjectPropertyFormGenerator"^^xsd:string ;
|
"edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.AutocompleteObjectPropertyFormGenerator"^^xsd:string ;
|
||||||
# :listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ;
|
# :listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasCollaborator"@en-US;
|
||||||
:displayName "has collaborator" ;
|
:displayName "has collaborator" ;
|
||||||
vitro:displayLimitAnnot
|
vitro:displayLimitAnnot
|
||||||
"5"^^xsd:int ;
|
"5"^^xsd:int ;
|
||||||
|
@ -742,6 +786,7 @@ local:orgHasCollaboratorConfig a :ObjectPropertyDisplayConfig ;
|
||||||
vitro:customEntryFormAnnot
|
vitro:customEntryFormAnnot
|
||||||
"edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.AutocompleteObjectPropertyFormGenerator"^^xsd:string ;
|
"edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.AutocompleteObjectPropertyFormGenerator"^^xsd:string ;
|
||||||
# :listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ;
|
# :listViewConfigFile "listViewConfig-roleRealizedIn.xml"^^xsd:string ;
|
||||||
|
rdfs:label "organizationHasCollaborator"@en-US;
|
||||||
:displayName "has collaborating organization or group" ;
|
:displayName "has collaborating organization or group" ;
|
||||||
vitro:displayLimitAnnot
|
vitro:displayLimitAnnot
|
||||||
"5"^^xsd:int ;
|
"5"^^xsd:int ;
|
||||||
|
@ -770,6 +815,7 @@ local:mailingAddressContext a :ConfigContext ;
|
||||||
|
|
||||||
local:mailingAddressConfig a :ObjectPropertyDisplayConfig ;
|
local:mailingAddressConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-mailingAddress.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-mailingAddress.xml"^^xsd:string ;
|
||||||
|
rdfs:label "mailingAddress"@en-US;
|
||||||
:displayName "mailing address" ;
|
:displayName "mailing address" ;
|
||||||
vitro:displayRankAnnot 29;
|
vitro:displayRankAnnot 29;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -786,6 +832,7 @@ local:mailingAddressOrgContext a :ConfigContext ;
|
||||||
|
|
||||||
local:mailingAddressOrgConfig a :ObjectPropertyDisplayConfig ;
|
local:mailingAddressOrgConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-mailingAddress.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-mailingAddress.xml"^^xsd:string ;
|
||||||
|
rdfs:label "mailingAddressOrganization"@en-US;
|
||||||
:displayName "mailing address" ;
|
:displayName "mailing address" ;
|
||||||
vitro:displayRankAnnot 29;
|
vitro:displayRankAnnot 29;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -802,6 +849,7 @@ local:personTelephoneContext a :ConfigContext ;
|
||||||
|
|
||||||
local:personTelephoneConfig a :ObjectPropertyDisplayConfig ;
|
local:personTelephoneConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-telephoneNumber.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-telephoneNumber.xml"^^xsd:string ;
|
||||||
|
rdfs:label "personTelephone"@en-US;
|
||||||
:displayName "phone" ;
|
:displayName "phone" ;
|
||||||
vitro:displayRankAnnot 60;
|
vitro:displayRankAnnot 60;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -818,6 +866,7 @@ local:orgTelephoneContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgTelephoneConfig a :ObjectPropertyDisplayConfig ;
|
local:orgTelephoneConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-telephoneNumber.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-telephoneNumber.xml"^^xsd:string ;
|
||||||
|
rdfs:label "organizationTelephone"@en-US;
|
||||||
:displayName "phone" ;
|
:displayName "phone" ;
|
||||||
vitro:displayRankAnnot 10;
|
vitro:displayRankAnnot 10;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -834,6 +883,7 @@ local:personFaxContext a :ConfigContext ;
|
||||||
|
|
||||||
local:personFaxConfig a :ObjectPropertyDisplayConfig ;
|
local:personFaxConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-faxNumber.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-faxNumber.xml"^^xsd:string ;
|
||||||
|
rdfs:label "personFax"@en-US;
|
||||||
:displayName "fax" ;
|
:displayName "fax" ;
|
||||||
vitro:displayRankAnnot 60;
|
vitro:displayRankAnnot 60;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -850,6 +900,7 @@ local:orgFaxContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgFaxConfig a :ObjectPropertyDisplayConfig ;
|
local:orgFaxConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-faxNumber.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-faxNumber.xml"^^xsd:string ;
|
||||||
|
rdfs:label "organizationFax"@en-US;
|
||||||
:displayName "fax" ;
|
:displayName "fax" ;
|
||||||
vitro:displayRankAnnot 20;
|
vitro:displayRankAnnot 20;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -866,6 +917,7 @@ local:additionalEmailContext a :ConfigContext ;
|
||||||
|
|
||||||
local:additionalEmailConfig a :ObjectPropertyDisplayConfig ;
|
local:additionalEmailConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-additionalEmail.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-additionalEmail.xml"^^xsd:string ;
|
||||||
|
rdfs:label "additionalEmail"@en-US;
|
||||||
:displayName "additional emails" ;
|
:displayName "additional emails" ;
|
||||||
vitro:displayRankAnnot 30;
|
vitro:displayRankAnnot 30;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -882,6 +934,7 @@ local:organizationEmailContext a :ConfigContext ;
|
||||||
|
|
||||||
local:organizationEmailConfig a :ObjectPropertyDisplayConfig ;
|
local:organizationEmailConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-additionalEmail.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-additionalEmail.xml"^^xsd:string ;
|
||||||
|
rdfs:label "organizationEmail"@en-US;
|
||||||
:displayName "email address" ;
|
:displayName "email address" ;
|
||||||
vitro:displayRankAnnot 28;
|
vitro:displayRankAnnot 28;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -898,6 +951,7 @@ local:primaryEmailContext a :ConfigContext ;
|
||||||
|
|
||||||
local:primaryEmailConfig a :ObjectPropertyDisplayConfig ;
|
local:primaryEmailConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-primaryEmail.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-primaryEmail.xml"^^xsd:string ;
|
||||||
|
rdfs:label "primaryEmail"@en-US;
|
||||||
:displayName "primary email" ;
|
:displayName "primary email" ;
|
||||||
vitro:displayRankAnnot 20;
|
vitro:displayRankAnnot 20;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -914,6 +968,7 @@ local:webpagePersonContext a :ConfigContext ;
|
||||||
|
|
||||||
local:webpagePersonConfig a :ObjectPropertyDisplayConfig ;
|
local:webpagePersonConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
|
||||||
|
rdfs:label "webpagePerson"@en-US;
|
||||||
:displayName "webpage" ;
|
:displayName "webpage" ;
|
||||||
vitro:displayRankAnnot 40;
|
vitro:displayRankAnnot 40;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -930,6 +985,7 @@ local:webpageOrgContext a :ConfigContext ;
|
||||||
|
|
||||||
local:webpageOrgConfig a :ObjectPropertyDisplayConfig ;
|
local:webpageOrgConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
|
||||||
|
rdfs:label "webpageOrganization"@en-US;
|
||||||
:displayName "webpage" ;
|
:displayName "webpage" ;
|
||||||
vitro:displayRankAnnot 40;
|
vitro:displayRankAnnot 40;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -946,6 +1002,7 @@ local:webpageInfoContext a :ConfigContext ;
|
||||||
|
|
||||||
local:webpageInfoConfig a :ObjectPropertyDisplayConfig ;
|
local:webpageInfoConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
|
||||||
|
rdfs:label "webpageInfo"@en-US;
|
||||||
:displayName "webpage" ;
|
:displayName "webpage" ;
|
||||||
vitro:displayRankAnnot 40;
|
vitro:displayRankAnnot 40;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1009,6 +1066,23 @@ local:webpageEventContext a :ConfigContext ;
|
||||||
:qualifiedBy <http://www.w3.org/2006/vcard/ns#URL> .
|
:qualifiedBy <http://www.w3.org/2006/vcard/ns#URL> .
|
||||||
|
|
||||||
local:webpageEventConfig a :ObjectPropertyDisplayConfig ;
|
local:webpageEventConfig a :ObjectPropertyDisplayConfig ;
|
||||||
|
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
|
||||||
|
rdfs:label "webpageEvent"@en-US;
|
||||||
|
:displayName "webpage" ;
|
||||||
|
vitro:displayRankAnnot 40;
|
||||||
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
vitro:prohibitedFromUpdateBelowRoleLevelAnnot role:public ;
|
||||||
|
vitro:customEntryFormAnnot "edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.ManageWebpagesForIndividualGenerator"^^<http://www.w3.org/2001/XMLSchema#string> ;
|
||||||
|
:propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupoverview> .
|
||||||
|
|
||||||
|
local:webpageEventSeriesContext a :ConfigContext ;
|
||||||
|
:hasConfiguration local:webpageEventSeriesConfig ;
|
||||||
|
:configContextFor <http://purl.obolibrary.org/obo/ARG_2000028> ;
|
||||||
|
:qualifiedByDomain <http://vivoweb.org/ontology/core#EventSeries> ;
|
||||||
|
:qualifiedByRoot <http://www.w3.org/2006/vcard/ns#Kind> ;
|
||||||
|
:qualifiedBy <http://www.w3.org/2006/vcard/ns#URL> .
|
||||||
|
|
||||||
|
local:webpageEventSeriesConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
|
||||||
:displayName "webpage" ;
|
:displayName "webpage" ;
|
||||||
vitro:displayRankAnnot 40;
|
vitro:displayRankAnnot 40;
|
||||||
|
@ -1026,6 +1100,7 @@ local:fullNameContext a :ConfigContext ;
|
||||||
|
|
||||||
local:fullNameConfig a :ObjectPropertyDisplayConfig ;
|
local:fullNameConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fullName.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fullName.xml"^^xsd:string ;
|
||||||
|
rdfs:label "fullName"@en-US;
|
||||||
:displayName "full name" ;
|
:displayName "full name" ;
|
||||||
vitro:displayRankAnnot 10;
|
vitro:displayRankAnnot 10;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1042,6 +1117,7 @@ local:preferredTitleContext a :ConfigContext ;
|
||||||
|
|
||||||
local:preferredTitleConfig a :ObjectPropertyDisplayConfig ;
|
local:preferredTitleConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-preferredTitle.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-preferredTitle.xml"^^xsd:string ;
|
||||||
|
rdfs:label "preferredTitle"@en-US;
|
||||||
:displayName "preferred title" ;
|
:displayName "preferred title" ;
|
||||||
vitro:displayRankAnnot 8;
|
vitro:displayRankAnnot 8;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1059,6 +1135,7 @@ local:outputOfContext a :ConfigContext ;
|
||||||
:qualifiedBy obo:BFO_0000015 . # Process
|
:qualifiedBy obo:BFO_0000015 . # Process
|
||||||
|
|
||||||
local:outputOfConfig a :ObjectPropertyDisplayConfig ;
|
local:outputOfConfig a :ObjectPropertyDisplayConfig ;
|
||||||
|
rdfs:label "outputOf"@en-US;
|
||||||
:displayName "output of process or event" ;
|
:displayName "output of process or event" ;
|
||||||
vitro:displayRankAnnot 80 ;
|
vitro:displayRankAnnot 80 ;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1075,6 +1152,7 @@ local:hasOutputContext a :ConfigContext ;
|
||||||
|
|
||||||
|
|
||||||
local:hasOutputConfig a :ObjectPropertyDisplayConfig ;
|
local:hasOutputConfig a :ObjectPropertyDisplayConfig ;
|
||||||
|
rdfs:label "hasOutput"@en-US;
|
||||||
:displayName "output publications or other works" ;
|
:displayName "output publications or other works" ;
|
||||||
vitro:displayRankAnnot 80 ;
|
vitro:displayRankAnnot 80 ;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1092,6 +1170,7 @@ local:credentialOfContext a :ConfigContext ;
|
||||||
|
|
||||||
local:credentialOfConfig a :ObjectPropertyDisplayConfig ;
|
local:credentialOfConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "credentialOf"@en-US;
|
||||||
:displayName "credential of" ;
|
:displayName "credential of" ;
|
||||||
vitro:displayRankAnnot 6;
|
vitro:displayRankAnnot 6;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1102,10 +1181,11 @@ local:documentHasPartContext a :ConfigContext ;
|
||||||
:hasConfiguration local:documentHasPartConfig ;
|
:hasConfiguration local:documentHasPartConfig ;
|
||||||
:configContextFor <http://purl.obolibrary.org/obo/BFO_0000051> ;
|
:configContextFor <http://purl.obolibrary.org/obo/BFO_0000051> ;
|
||||||
:qualifiedByDomain <http://purl.org/ontology/bibo/Document> ;
|
:qualifiedByDomain <http://purl.org/ontology/bibo/Document> ;
|
||||||
:qualifiedBy <http://purl.org/ontology/bibo/DocumentPart> .
|
:qualifiedBy <http://purl.org/ontology/bibo/Document> .
|
||||||
|
|
||||||
local:documentHasPartConfig a :ObjectPropertyDisplayConfig ;
|
local:documentHasPartConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "documentHasPart"@en-US;
|
||||||
:displayName "has document part" ;
|
:displayName "has document part" ;
|
||||||
vitro:displayRankAnnot 51;
|
vitro:displayRankAnnot 51;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1122,6 +1202,7 @@ local:documentPartOfContext a :ConfigContext ;
|
||||||
|
|
||||||
local:documentPartOfConfig a :ObjectPropertyDisplayConfig ;
|
local:documentPartOfConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "documentPartOf"@en-US;
|
||||||
:displayName "part of other document" ;
|
:displayName "part of other document" ;
|
||||||
vitro:displayRankAnnot 52;
|
vitro:displayRankAnnot 52;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1138,6 +1219,7 @@ local:geographicLocationContainsLocationContext a :ConfigContext ;
|
||||||
|
|
||||||
local:geographicLocationContainsLocationConfig a :ObjectPropertyDisplayConfig ;
|
local:geographicLocationContainsLocationConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "geographicLocationContainsLocation"@en-US;
|
||||||
:displayName "has part" ;
|
:displayName "has part" ;
|
||||||
vitro:displayRankAnnot 81;
|
vitro:displayRankAnnot 81;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1154,6 +1236,7 @@ local:geographicLocationWithinLocationContext a :ConfigContext ;
|
||||||
|
|
||||||
local:geographicLocationWithinLocationConfig a :ObjectPropertyDisplayConfig ;
|
local:geographicLocationWithinLocationConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "geographicLocationWithinLocation"@en-US;
|
||||||
:displayName "part of" ;
|
:displayName "part of" ;
|
||||||
vitro:displayRankAnnot 82;
|
vitro:displayRankAnnot 82;
|
||||||
vitro:selectFromExistingAnnot "true"^^xsd:boolean ;
|
vitro:selectFromExistingAnnot "true"^^xsd:boolean ;
|
||||||
|
@ -1170,6 +1253,7 @@ local:hasSubOrganizationContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasSubOrganizationConfig a :ObjectPropertyDisplayConfig ;
|
local:hasSubOrganizationConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasSubOrganization"@en-US;
|
||||||
:displayName "has sub-organization" ;
|
:displayName "has sub-organization" ;
|
||||||
vitro:displayRankAnnot 15;
|
vitro:displayRankAnnot 15;
|
||||||
vitro:selectFromExistingAnnot "true"^^xsd:boolean ;
|
vitro:selectFromExistingAnnot "true"^^xsd:boolean ;
|
||||||
|
@ -1186,6 +1270,7 @@ local:subOrganizationWithinContext a :ConfigContext ;
|
||||||
|
|
||||||
local:subOrganizationWithinConfig a :ObjectPropertyDisplayConfig ;
|
local:subOrganizationWithinConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "subOrganizationWithin"@en-US;
|
||||||
:displayName "organization within" ;
|
:displayName "organization within" ;
|
||||||
vitro:displayRankAnnot 20;
|
vitro:displayRankAnnot 20;
|
||||||
vitro:selectFromExistingAnnot "true"^^xsd:boolean ;
|
vitro:selectFromExistingAnnot "true"^^xsd:boolean ;
|
||||||
|
@ -1202,6 +1287,7 @@ local:eventWithinContext a :ConfigContext ;
|
||||||
|
|
||||||
local:eventWithinConfig a :ObjectPropertyDisplayConfig ;
|
local:eventWithinConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "eventWithin"@en-US;
|
||||||
:displayName "occurs within event" ;
|
:displayName "occurs within event" ;
|
||||||
vitro:displayRankAnnot 15;
|
vitro:displayRankAnnot 15;
|
||||||
vitro:selectFromExistingAnnot "true"^^xsd:boolean ;
|
vitro:selectFromExistingAnnot "true"^^xsd:boolean ;
|
||||||
|
@ -1218,6 +1304,7 @@ local:includesEventContext a :ConfigContext ;
|
||||||
|
|
||||||
local:includesEventConfig a :ObjectPropertyDisplayConfig ;
|
local:includesEventConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "includesEvent"@en-US;
|
||||||
:displayName "includes event" ;
|
:displayName "includes event" ;
|
||||||
vitro:displayRankAnnot 16;
|
vitro:displayRankAnnot 16;
|
||||||
vitro:selectFromExistingAnnot "true"^^xsd:boolean ;
|
vitro:selectFromExistingAnnot "true"^^xsd:boolean ;
|
||||||
|
@ -1234,6 +1321,7 @@ local:inEventSeriesContext a :ConfigContext ;
|
||||||
|
|
||||||
local:inEventSeriesConfig a :ObjectPropertyDisplayConfig ;
|
local:inEventSeriesConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "inEventSeries"@en-US;
|
||||||
:displayName "in event series" ;
|
:displayName "in event series" ;
|
||||||
vitro:displayRankAnnot 17;
|
vitro:displayRankAnnot 17;
|
||||||
vitro:selectFromExistingAnnot "true"^^xsd:boolean ;
|
vitro:selectFromExistingAnnot "true"^^xsd:boolean ;
|
||||||
|
@ -1250,6 +1338,7 @@ local:eventsForSeriesContext a :ConfigContext ;
|
||||||
|
|
||||||
local:eventsForSeriesConfig a :ObjectPropertyDisplayConfig ;
|
local:eventsForSeriesConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "eventsForSeries"@en-US;
|
||||||
:displayName "events in this series" ;
|
:displayName "events in this series" ;
|
||||||
vitro:displayRankAnnot 18;
|
vitro:displayRankAnnot 18;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1266,6 +1355,7 @@ local:eventLocationContext a :ConfigContext ;
|
||||||
|
|
||||||
local:eventLocationConfig a :ObjectPropertyDisplayConfig ;
|
local:eventLocationConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "eventLocation"@en-US;
|
||||||
:displayName "held in geographic location" ;
|
:displayName "held in geographic location" ;
|
||||||
vitro:displayRankAnnot 30;
|
vitro:displayRankAnnot 30;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1282,6 +1372,7 @@ local:eventInFacilityContext a :ConfigContext ;
|
||||||
|
|
||||||
local:eventInFacilityConfig a :ObjectPropertyDisplayConfig ;
|
local:eventInFacilityConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "eventInFacility"@en-US;
|
||||||
:displayName "held in facility" ;
|
:displayName "held in facility" ;
|
||||||
vitro:displayRankAnnot 29;
|
vitro:displayRankAnnot 29;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1298,6 +1389,7 @@ local:agentInGeoLocationContext a :ConfigContext ;
|
||||||
|
|
||||||
local:agentInGeoLocationConfig a :ObjectPropertyDisplayConfig ;
|
local:agentInGeoLocationConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "agentInGeoLocation"@en-US;
|
||||||
:displayName "geographic location" ;
|
:displayName "geographic location" ;
|
||||||
vitro:displayRankAnnot 30;
|
vitro:displayRankAnnot 30;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1314,6 +1406,7 @@ local:agentInFacilityContext a :ConfigContext ;
|
||||||
|
|
||||||
local:agentInFacilityConfig a :ObjectPropertyDisplayConfig ;
|
local:agentInFacilityConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "agentInFacility"@en-US;
|
||||||
:displayName "located in facility" ;
|
:displayName "located in facility" ;
|
||||||
vitro:displayRankAnnot 32;
|
vitro:displayRankAnnot 32;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1330,6 +1423,7 @@ local:materialEntityInFacilityContext a :ConfigContext ;
|
||||||
|
|
||||||
local:materialEntityInFacilityConfig a :ObjectPropertyDisplayConfig ;
|
local:materialEntityInFacilityConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "materialEntityInFacility"@en-US;
|
||||||
:displayName "housed in facility" ;
|
:displayName "housed in facility" ;
|
||||||
vitro:displayRankAnnot 2;
|
vitro:displayRankAnnot 2;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1346,6 +1440,7 @@ local:hasRoomContext a :ConfigContext ;
|
||||||
|
|
||||||
local:hasRoomConfig a :ObjectPropertyDisplayConfig ;
|
local:hasRoomConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "hasRoom"@en-US;
|
||||||
:displayName "rooms" ;
|
:displayName "rooms" ;
|
||||||
vitro:displayRankAnnot 30;
|
vitro:displayRankAnnot 30;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1362,6 +1457,7 @@ local:roomWithinBuildingContext a :ConfigContext ;
|
||||||
|
|
||||||
local:roomWithinBuildingConfig a :ObjectPropertyDisplayConfig ;
|
local:roomWithinBuildingConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "roomWithinBuilding"@en-US;
|
||||||
:displayName "within building" ;
|
:displayName "within building" ;
|
||||||
vitro:displayRankAnnot 23;
|
vitro:displayRankAnnot 23;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1379,6 +1475,7 @@ local:geographicLocationContainsBuildingContext a :ConfigContext ;
|
||||||
|
|
||||||
local:geographicLocationContainsBuildingConfig a :ObjectPropertyDisplayConfig ;
|
local:geographicLocationContainsBuildingConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "geographicLocationContainsBuilding"@en-US;
|
||||||
:displayName "location of facility" ;
|
:displayName "location of facility" ;
|
||||||
vitro:displayRankAnnot 85;
|
vitro:displayRankAnnot 85;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1395,6 +1492,7 @@ local:siteGeographicallyWithinGeoLocationContext a :ConfigContext ;
|
||||||
|
|
||||||
local:siteGeographicallyWithinGeoLocationConfig a :ObjectPropertyDisplayConfig ;
|
local:siteGeographicallyWithinGeoLocationConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "siteGeographicallyWithinGeoLocation"@en-US;
|
||||||
:displayName "geographically within" ;
|
:displayName "geographically within" ;
|
||||||
vitro:displayRankAnnot 40;
|
vitro:displayRankAnnot 40;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1411,6 +1509,7 @@ local:facilitySiteOfEventContext a :ConfigContext ;
|
||||||
|
|
||||||
local:facilitySiteOfEventConfig a :ObjectPropertyDisplayConfig ;
|
local:facilitySiteOfEventConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "facilitySiteOfEvent"@en-US;
|
||||||
:displayName "facility for event" ;
|
:displayName "facility for event" ;
|
||||||
vitro:displayRankAnnot 22;
|
vitro:displayRankAnnot 22;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1427,6 +1526,7 @@ local:facilitySiteOfAgentContext a :ConfigContext ;
|
||||||
|
|
||||||
local:facilitySiteOfAgentConfig a :ObjectPropertyDisplayConfig ;
|
local:facilitySiteOfAgentConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "facilitySiteOfAgent"@en-US;
|
||||||
:displayName "facility for person, group, or organization" ;
|
:displayName "facility for person, group, or organization" ;
|
||||||
vitro:displayRankAnnot 20;
|
vitro:displayRankAnnot 20;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1444,6 +1544,7 @@ local:facilitySiteOfAgentConfig a :ObjectPropertyDisplayConfig ;
|
||||||
|
|
||||||
#local:projectUsesMaterialEntityConfig a :ObjectPropertyDisplayConfig ;
|
#local:projectUsesMaterialEntityConfig a :ObjectPropertyDisplayConfig ;
|
||||||
# :listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
# :listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
# rdfs:label "projectUsesMaterialEntity"@en-US;
|
||||||
# :displayName "uses specimen, equipment, instrument, organism, reagent, or software" ;
|
# :displayName "uses specimen, equipment, instrument, organism, reagent, or software" ;
|
||||||
# vitro:displayRankAnnot 85;
|
# vitro:displayRankAnnot 85;
|
||||||
# vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
# vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1460,6 +1561,7 @@ local:facilitySiteOfAgentConfig a :ObjectPropertyDisplayConfig ;
|
||||||
|
|
||||||
#local:materialEntityUsedByProjectConfig a :ObjectPropertyDisplayConfig ;
|
#local:materialEntityUsedByProjectConfig a :ObjectPropertyDisplayConfig ;
|
||||||
# :listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
# :listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
# rdfs:label "materialEntityUsedByProject"@en-US;
|
||||||
# :displayName "used by project" ;
|
# :displayName "used by project" ;
|
||||||
# vitro:displayRankAnnot 85;
|
# vitro:displayRankAnnot 85;
|
||||||
# vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
# vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1476,6 +1578,7 @@ local:facilityLocationOfEquipmentContext a :ConfigContext ;
|
||||||
|
|
||||||
local:facilityLocationOfEquipmentConfig a :ObjectPropertyDisplayConfig ;
|
local:facilityLocationOfEquipmentConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "facilityLocationOfEquipment"@en-US;
|
||||||
:displayName "location of equipment or instrument" ;
|
:displayName "location of equipment or instrument" ;
|
||||||
vitro:displayRankAnnot 14;
|
vitro:displayRankAnnot 14;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1492,6 +1595,7 @@ local:facilityLocationOfServiceContext a :ConfigContext ;
|
||||||
|
|
||||||
local:facilityLocationOfServiceConfig a :ObjectPropertyDisplayConfig ;
|
local:facilityLocationOfServiceConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "facilityLocationOfService"@en-US;
|
||||||
:displayName "facility for service" ;
|
:displayName "facility for service" ;
|
||||||
vitro:displayRankAnnot 18;
|
vitro:displayRankAnnot 18;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1509,6 +1613,7 @@ local:courseOfferedByContext a :ConfigContext ;
|
||||||
|
|
||||||
local:courseOfferedByConfig a :ObjectPropertyDisplayConfig ;
|
local:courseOfferedByConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "courseOfferedBy"@en-US;
|
||||||
:displayName "offered by" ;
|
:displayName "offered by" ;
|
||||||
vitro:displayRankAnnot 2;
|
vitro:displayRankAnnot 2;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1525,6 +1630,7 @@ local:orgOffersCourseContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgOffersCourseConfig a :ObjectPropertyDisplayConfig ;
|
local:orgOffersCourseConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "organizationOffersCourse"@en-US;
|
||||||
:displayName "offers course" ;
|
:displayName "offers course" ;
|
||||||
vitro:displayRankAnnot 90;
|
vitro:displayRankAnnot 90;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1541,6 +1647,7 @@ local:collegeOffersDegreeContext a :ConfigContext ;
|
||||||
|
|
||||||
local:collegeOffersDegreeConfig a :ObjectPropertyDisplayConfig ;
|
local:collegeOffersDegreeConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "collegeOffersDegree"@en-US;
|
||||||
:displayName "offers degree" ;
|
:displayName "offers degree" ;
|
||||||
vitro:displayRankAnnot 12;
|
vitro:displayRankAnnot 12;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1555,6 +1662,7 @@ local:deptOffersDegreeContext a :ConfigContext ;
|
||||||
|
|
||||||
local:deptOffersDegreeConfig a :ObjectPropertyDisplayConfig ;
|
local:deptOffersDegreeConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "deptOffersDegree"@en-US;
|
||||||
:displayName "offers degree" ;
|
:displayName "offers degree" ;
|
||||||
vitro:displayRankAnnot 2;
|
vitro:displayRankAnnot 2;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1569,6 +1677,7 @@ local:uniOffersDegreeContext a :ConfigContext ;
|
||||||
|
|
||||||
local:uniOffersDegreeConfig a :ObjectPropertyDisplayConfig ;
|
local:uniOffersDegreeConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "universityOffersDegree"@en-US;
|
||||||
:displayName "offers degree" ;
|
:displayName "offers degree" ;
|
||||||
vitro:displayRankAnnot 2;
|
vitro:displayRankAnnot 2;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1583,6 +1692,7 @@ local:labOffersServiceContext a :ConfigContext ;
|
||||||
|
|
||||||
local:labOffersServiceConfig a :ObjectPropertyDisplayConfig ;
|
local:labOffersServiceConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "labOffersService"@en-US;
|
||||||
:displayName "offers service" ;
|
:displayName "offers service" ;
|
||||||
vitro:displayRankAnnot 2;
|
vitro:displayRankAnnot 2;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1598,6 +1708,7 @@ local:grantAwardedByContext a :ConfigContext ;
|
||||||
|
|
||||||
local:grantAwardedByConfig a :ObjectPropertyDisplayConfig ;
|
local:grantAwardedByConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "grantAwardedBy"@en-US;
|
||||||
:displayName "awarded by" ;
|
:displayName "awarded by" ;
|
||||||
vitro:displayRankAnnot 14;
|
vitro:displayRankAnnot 14;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1613,6 +1724,7 @@ local:contractAwardedByContext a :ConfigContext ;
|
||||||
|
|
||||||
local:contractAwardedByConfig a :ObjectPropertyDisplayConfig ;
|
local:contractAwardedByConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "contractAwardedBy"@en-US;
|
||||||
:displayName "awarded by" ;
|
:displayName "awarded by" ;
|
||||||
vitro:displayRankAnnot 14;
|
vitro:displayRankAnnot 14;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1628,6 +1740,7 @@ local:grantSubjectAreaContext a :ConfigContext ;
|
||||||
|
|
||||||
local:grantSubjectAreaConfig a :ObjectPropertyDisplayConfig ;
|
local:grantSubjectAreaConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "grantSubjectArea"@en-US;
|
||||||
:displayName "has subject area" ;
|
:displayName "has subject area" ;
|
||||||
vitro:displayRankAnnot 10;
|
vitro:displayRankAnnot 10;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1642,6 +1755,7 @@ local:grantHasSubgrantContext a :ConfigContext ;
|
||||||
|
|
||||||
local:grantHasSubgrantConfig a :ObjectPropertyDisplayConfig ;
|
local:grantHasSubgrantConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "grantHasSubgrant"@en-US;
|
||||||
:displayName "has sub grant" ;
|
:displayName "has sub grant" ;
|
||||||
vitro:displayRankAnnot 30;
|
vitro:displayRankAnnot 30;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1658,6 +1772,7 @@ local:grantIsSubgrantOfContext a :ConfigContext ;
|
||||||
|
|
||||||
local:grantIsSubgrantOfConfig a :ObjectPropertyDisplayConfig ;
|
local:grantIsSubgrantOfConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "grantIsSubgrantOf"@en-US;
|
||||||
:displayName "sub grant of" ;
|
:displayName "sub grant of" ;
|
||||||
vitro:displayRankAnnot 32;
|
vitro:displayRankAnnot 32;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1674,6 +1789,7 @@ local:grantGeographicFocusContext a :ConfigContext ;
|
||||||
|
|
||||||
local:grantGeographicFocusConfig a :ObjectPropertyDisplayConfig ;
|
local:grantGeographicFocusConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "grantGeographicFocus"@en-US;
|
||||||
:displayName "geographic focus" ;
|
:displayName "geographic focus" ;
|
||||||
vitro:displayRankAnnot 20;
|
vitro:displayRankAnnot 20;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1690,6 +1806,7 @@ local:awardOrHonorReceiptsContext a :ConfigContext ;
|
||||||
|
|
||||||
local:awardOrHonorReceiptsConfig a :ObjectPropertyDisplayConfig ;
|
local:awardOrHonorReceiptsConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "awardOrHonorReceipts"@en-US;
|
||||||
:displayName "receipts" ;
|
:displayName "receipts" ;
|
||||||
vitro:displayRankAnnot 3;
|
vitro:displayRankAnnot 3;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1704,6 +1821,7 @@ local:awardReceiptsContext a :ConfigContext ;
|
||||||
|
|
||||||
local:awardReceiptsConfig a :ObjectPropertyDisplayConfig ;
|
local:awardReceiptsConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "awardReceipts"@en-US;
|
||||||
:displayName "receipt of" ;
|
:displayName "receipt of" ;
|
||||||
vitro:displayRankAnnot 1;
|
vitro:displayRankAnnot 1;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1718,6 +1836,7 @@ local:awardReceiptsAwardForContext a :ConfigContext ;
|
||||||
|
|
||||||
local:awardReceiptsAwardForConfig a :ObjectPropertyDisplayConfig ;
|
local:awardReceiptsAwardForConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "awardReceiptsAwardFor"@en-US;
|
||||||
:displayName "award or honor for" ;
|
:displayName "award or honor for" ;
|
||||||
vitro:displayRankAnnot 2;
|
vitro:displayRankAnnot 2;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1732,6 +1851,7 @@ local:awardOrHonorGivenContext a :ConfigContext ;
|
||||||
|
|
||||||
local:awardOrHonorGivenConfig a :ObjectPropertyDisplayConfig ;
|
local:awardOrHonorGivenConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-awardOrHonorGiven.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-awardOrHonorGiven.xml"^^xsd:string ;
|
||||||
|
rdfs:label "awardOrHonorGiven"@en-US;
|
||||||
:displayName "award or honor given" ;
|
:displayName "award or honor given" ;
|
||||||
vitro:displayRankAnnot 72;
|
vitro:displayRankAnnot 72;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1746,6 +1866,7 @@ local:awardConferredByContext a :ConfigContext ;
|
||||||
|
|
||||||
local:awardConferredByConfig a :ObjectPropertyDisplayConfig ;
|
local:awardConferredByConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "awardConferredBy"@en-US;
|
||||||
:displayName "award conferred by" ;
|
:displayName "award conferred by" ;
|
||||||
vitro:displayRankAnnot 3;
|
vitro:displayRankAnnot 3;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1760,6 +1881,7 @@ local:orgAwardsGrantContext a :ConfigContext ;
|
||||||
|
|
||||||
local:orgAwardsGrantConfig a :ObjectPropertyDisplayConfig ;
|
local:orgAwardsGrantConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-organizationAwardsGrant.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-organizationAwardsGrant.xml"^^xsd:string ;
|
||||||
|
rdfs:label "orgAwardsGrant"@en-US;
|
||||||
:displayName "awards grant" ;
|
:displayName "awards grant" ;
|
||||||
vitro:displayRankAnnot 60;
|
vitro:displayRankAnnot 60;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1775,6 +1897,7 @@ local:addressLocationContext a :ConfigContext ;
|
||||||
|
|
||||||
local:addressLocationConfig a :ObjectPropertyDisplayConfig ;
|
local:addressLocationConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-fauxPropertyDefault.xml"^^xsd:string ;
|
||||||
|
rdfs:label "addressLocation"@en-US;
|
||||||
:displayName "has geographic location" ;
|
:displayName "has geographic location" ;
|
||||||
vitro:displayRankAnnot 2;
|
vitro:displayRankAnnot 2;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1791,6 +1914,7 @@ local:bfo_0000055Context a :ConfigContext ;
|
||||||
|
|
||||||
local:bfo_0000055Config a :ObjectPropertyDisplayConfig ;
|
local:bfo_0000055Config a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-relatedRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-relatedRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "relatedRole"@en-US;
|
||||||
:displayName "participant" ;
|
:displayName "participant" ;
|
||||||
vitro:displayRankAnnot 17;
|
vitro:displayRankAnnot 17;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1808,6 +1932,7 @@ local:grantRelatesContext a :ConfigContext ;
|
||||||
|
|
||||||
local:grantRelatesConfig a :ObjectPropertyDisplayConfig ;
|
local:grantRelatesConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-relatedRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-relatedRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "grantRelates"@en-US;
|
||||||
:displayName "contributor" ;
|
:displayName "contributor" ;
|
||||||
vitro:displayRankAnnot 55;
|
vitro:displayRankAnnot 55;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1823,6 +1948,7 @@ local:contractRelatesContext a :ConfigContext ;
|
||||||
|
|
||||||
local:contractRelatesConfig a :ObjectPropertyDisplayConfig ;
|
local:contractRelatesConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-relatedRole.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-relatedRole.xml"^^xsd:string ;
|
||||||
|
rdfs:label "contractRelates"@en-US;
|
||||||
:displayName "contributor" ;
|
:displayName "contributor" ;
|
||||||
vitro:displayRankAnnot 55;
|
vitro:displayRankAnnot 55;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1840,6 +1966,7 @@ local:publicationDateContext a :ConfigContext ;
|
||||||
|
|
||||||
local:publicationDateConfig a :ObjectPropertyDisplayConfig ;
|
local:publicationDateConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-dateTimeValue.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-dateTimeValue.xml"^^xsd:string ;
|
||||||
|
rdfs:label "publicationDate"@en-US;
|
||||||
:displayName "publication date" ;
|
:displayName "publication date" ;
|
||||||
vitro:displayRankAnnot 17;
|
vitro:displayRankAnnot 17;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
||||||
|
@ -1854,6 +1981,7 @@ local:yearAwardedContext a :ConfigContext ;
|
||||||
|
|
||||||
local:yearAwardedConfig a :ObjectPropertyDisplayConfig ;
|
local:yearAwardedConfig a :ObjectPropertyDisplayConfig ;
|
||||||
:listViewConfigFile "listViewConfig-dateTimeValue.xml"^^xsd:string ;
|
:listViewConfigFile "listViewConfig-dateTimeValue.xml"^^xsd:string ;
|
||||||
|
rdfs:label "yearAwarded"@en-US;
|
||||||
:displayName "year awarded" ;
|
:displayName "year awarded" ;
|
||||||
vitro:displayRankAnnot 10;
|
vitro:displayRankAnnot 10;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
|
|
@ -540,7 +540,7 @@
|
||||||
|
|
||||||
<owl:equivalentClass>
|
<owl:equivalentClass>
|
||||||
<owl:Class>
|
<owl:Class>
|
||||||
<owl:intersectionOf rdf:parseType="Collection">
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
<owl:Class>
|
<owl:Class>
|
||||||
<owl:intersectionOf rdf:parseType="Collection">
|
<owl:intersectionOf rdf:parseType="Collection">
|
||||||
<owl:Restriction>
|
<owl:Restriction>
|
||||||
|
@ -589,7 +589,7 @@
|
||||||
</owl:Restriction>
|
</owl:Restriction>
|
||||||
</owl:intersectionOf>
|
</owl:intersectionOf>
|
||||||
</owl:Class>
|
</owl:Class>
|
||||||
</owl:intersectionOf>
|
</owl:unionOf>
|
||||||
</owl:Class>
|
</owl:Class>
|
||||||
</owl:equivalentClass>
|
</owl:equivalentClass>
|
||||||
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string">These types are concerned with information related to the delivery addressing or label for the vCard object</rdfs:comment>
|
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string">These types are concerned with information related to the delivery addressing or label for the vCard object</rdfs:comment>
|
||||||
|
@ -786,7 +786,7 @@ Was called CALADRURI in vCard</rdfs:comment>
|
||||||
|
|
||||||
<owl:equivalentClass>
|
<owl:equivalentClass>
|
||||||
<owl:Class>
|
<owl:Class>
|
||||||
<owl:intersectionOf rdf:parseType="Collection">
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
<owl:Class>
|
<owl:Class>
|
||||||
<owl:intersectionOf rdf:parseType="Collection">
|
<owl:intersectionOf rdf:parseType="Collection">
|
||||||
<owl:Restriction>
|
<owl:Restriction>
|
||||||
|
@ -835,7 +835,7 @@ Was called CALADRURI in vCard</rdfs:comment>
|
||||||
</owl:Restriction>
|
</owl:Restriction>
|
||||||
</owl:intersectionOf>
|
</owl:intersectionOf>
|
||||||
</owl:Class>
|
</owl:Class>
|
||||||
</owl:intersectionOf>
|
</owl:unionOf>
|
||||||
</owl:Class>
|
</owl:Class>
|
||||||
</owl:equivalentClass>
|
</owl:equivalentClass>
|
||||||
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string">These properties describe information about how to communicate with the object the vCard represents</rdfs:comment>
|
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string">These properties describe information about how to communicate with the object the vCard represents</rdfs:comment>
|
||||||
|
@ -927,7 +927,7 @@ Was called CALADRURI in vCard</rdfs:comment>
|
||||||
|
|
||||||
<owl:equivalentClass>
|
<owl:equivalentClass>
|
||||||
<owl:Class>
|
<owl:Class>
|
||||||
<owl:intersectionOf rdf:parseType="Collection">
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
<owl:Class>
|
<owl:Class>
|
||||||
<owl:intersectionOf rdf:parseType="Collection">
|
<owl:intersectionOf rdf:parseType="Collection">
|
||||||
<owl:Restriction>
|
<owl:Restriction>
|
||||||
|
@ -976,7 +976,7 @@ Was called CALADRURI in vCard</rdfs:comment>
|
||||||
</owl:Restriction>
|
</owl:Restriction>
|
||||||
</owl:intersectionOf>
|
</owl:intersectionOf>
|
||||||
</owl:Class>
|
</owl:Class>
|
||||||
</owl:intersectionOf>
|
</owl:unionOf>
|
||||||
</owl:Class>
|
</owl:Class>
|
||||||
</owl:equivalentClass>
|
</owl:equivalentClass>
|
||||||
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string">These properties are concerned with additional explanations, such as that related to informational notes or revisions specific to the vCard</rdfs:comment>
|
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string">These properties are concerned with additional explanations, such as that related to informational notes or revisions specific to the vCard</rdfs:comment>
|
||||||
|
@ -1131,7 +1131,7 @@ Was called CALADRURI in vCard</rdfs:comment>
|
||||||
|
|
||||||
<owl:equivalentClass>
|
<owl:equivalentClass>
|
||||||
<owl:Class>
|
<owl:Class>
|
||||||
<owl:intersectionOf rdf:parseType="Collection">
|
<owl:unionOf rdf:parseType="Collection">
|
||||||
<owl:Class>
|
<owl:Class>
|
||||||
<owl:intersectionOf rdf:parseType="Collection">
|
<owl:intersectionOf rdf:parseType="Collection">
|
||||||
<owl:Restriction>
|
<owl:Restriction>
|
||||||
|
@ -1180,7 +1180,7 @@ Was called CALADRURI in vCard</rdfs:comment>
|
||||||
</owl:Restriction>
|
</owl:Restriction>
|
||||||
</owl:intersectionOf>
|
</owl:intersectionOf>
|
||||||
</owl:Class>
|
</owl:Class>
|
||||||
</owl:intersectionOf>
|
</owl:unionOf>
|
||||||
</owl:Class>
|
</owl:Class>
|
||||||
</owl:equivalentClass>
|
</owl:equivalentClass>
|
||||||
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string">These types are used to capture information associated with the identification and naming of the entity associated with the vCard</rdfs:comment>
|
<rdfs:comment rdf:datatype="http://www.w3.org/2001/XMLSchema#string">These types are used to capture information associated with the identification and naming of the entity associated with the vCard</rdfs:comment>
|
||||||
|
|
|
@ -520,7 +520,7 @@ geo:hasMinLongitude
|
||||||
<http://vitro.mannlib.cornell.edu/ns/vitro/role#public> .
|
<http://vitro.mannlib.cornell.edu/ns/vitro/role#public> .
|
||||||
|
|
||||||
bibo:Manuscript
|
bibo:Manuscript
|
||||||
rdfs:label "manuscript"@en-US , "Manuscript"@en-US ;
|
rdfs:label "manuscript"@en-US ;
|
||||||
vitro:displayLimitAnnot
|
vitro:displayLimitAnnot
|
||||||
"-1"^^xsd:int ;
|
"-1"^^xsd:int ;
|
||||||
vitro:displayRankAnnot
|
vitro:displayRankAnnot
|
||||||
|
@ -535,7 +535,7 @@ bibo:Manuscript
|
||||||
owl:sameAs
|
owl:sameAs
|
||||||
a owl:ObjectProperty ;
|
a owl:ObjectProperty ;
|
||||||
rdfs:domain owl:Thing ;
|
rdfs:domain owl:Thing ;
|
||||||
rdfs:label "mismo que"@es , "same as"@en-US ;
|
rdfs:label "same as"@en-US ;
|
||||||
rdfs:range owl:Thing ;
|
rdfs:range owl:Thing ;
|
||||||
rdfs:subPropertyOf owl:topObjectProperty ;
|
rdfs:subPropertyOf owl:topObjectProperty ;
|
||||||
vitro:displayLimitAnnot
|
vitro:displayLimitAnnot
|
||||||
|
@ -1774,6 +1774,8 @@ vivo:publisherOf
|
||||||
"25"^^xsd:int ;
|
"25"^^xsd:int ;
|
||||||
vitro:fullPropertyNameAnnot
|
vitro:fullPropertyNameAnnot
|
||||||
"publisher of"^^xsd:string ;
|
"publisher of"^^xsd:string ;
|
||||||
|
vitro:customEntryFormAnnot
|
||||||
|
"edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.AutocompleteObjectPropertyFormGenerator"^^xsd:string ;
|
||||||
vitro:hiddenFromDisplayBelowRoleLevelAnnot
|
vitro:hiddenFromDisplayBelowRoleLevelAnnot
|
||||||
<http://vitro.mannlib.cornell.edu/ns/vitro/role#public> ;
|
<http://vitro.mannlib.cornell.edu/ns/vitro/role#public> ;
|
||||||
vitro:hiddenFromPublishBelowRoleLevelAnnot
|
vitro:hiddenFromPublishBelowRoleLevelAnnot
|
||||||
|
|
|
@ -120,7 +120,9 @@ public class GeoFocusMapLocations extends AbstractAjaxResponder {
|
||||||
response = response.substring(0, response.lastIndexOf(","));
|
response = response.substring(0, response.lastIndexOf(","));
|
||||||
}
|
}
|
||||||
response += " ]";
|
response += " ]";
|
||||||
log.debug(response);
|
if ( log.isDebugEnabled() ) {
|
||||||
|
log.debug(response);
|
||||||
|
}
|
||||||
return response;
|
return response;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.error("Failed geographic focus locations", e);
|
log.error("Failed geographic focus locations", e);
|
||||||
|
|
|
@ -44,7 +44,9 @@ public class ManageGrantsForIndividualController extends FreemarkerHttpServlet {
|
||||||
body.put("subjectUri", subjectUri);
|
body.put("subjectUri", subjectUri);
|
||||||
|
|
||||||
HashMap<String, List<Map<String,String>>> grants = getGrants(subjectUri, vreq);
|
HashMap<String, List<Map<String,String>>> grants = getGrants(subjectUri, vreq);
|
||||||
log.debug("grants = " + grants);
|
if ( log.isDebugEnabled() ) {
|
||||||
|
log.debug("grants = " + grants);
|
||||||
|
}
|
||||||
body.put("grants", grants);
|
body.put("grants", grants);
|
||||||
|
|
||||||
List<String> allSubclasses = getAllSubclasses(grants);
|
List<String> allSubclasses = getAllSubclasses(grants);
|
||||||
|
|
|
@ -44,7 +44,9 @@ public class ManagePeopleForOrganizationController extends FreemarkerHttpServlet
|
||||||
body.put("subjectUri", subjectUri);
|
body.put("subjectUri", subjectUri);
|
||||||
|
|
||||||
HashMap<String, List<Map<String,String>>> people = getPeople(subjectUri, vreq);
|
HashMap<String, List<Map<String,String>>> people = getPeople(subjectUri, vreq);
|
||||||
log.debug("people = " + people);
|
if ( log.isDebugEnabled() ) {
|
||||||
|
log.debug("people = " + people);
|
||||||
|
}
|
||||||
body.put("people", people);
|
body.put("people", people);
|
||||||
|
|
||||||
List<String> allSubclasses = getAllSubclasses(people);
|
List<String> allSubclasses = getAllSubclasses(people);
|
||||||
|
|
|
@ -44,7 +44,9 @@ public class ManagePublicationsForIndividualController extends FreemarkerHttpSer
|
||||||
body.put("subjectUri", subjectUri);
|
body.put("subjectUri", subjectUri);
|
||||||
|
|
||||||
HashMap<String, List<Map<String,String>>> publications = getPublications(subjectUri, vreq);
|
HashMap<String, List<Map<String,String>>> publications = getPublications(subjectUri, vreq);
|
||||||
log.debug("publications = " + publications);
|
if ( log.isDebugEnabled() ) {
|
||||||
|
log.debug("publications = " + publications);
|
||||||
|
}
|
||||||
body.put("publications", publications);
|
body.put("publications", publications);
|
||||||
|
|
||||||
List<String> allSubclasses = getAllSubclasses(publications);
|
List<String> allSubclasses = getAllSubclasses(publications);
|
||||||
|
|
|
@ -360,7 +360,7 @@ public class AddAuthorsToInformationResourceGenerator extends VivoBaseGenerator
|
||||||
+ " OPTIONAL { ?authorURI rdfs:label ?authorName } \n"
|
+ " OPTIONAL { ?authorURI rdfs:label ?authorName } \n"
|
||||||
+ " OPTIONAL { ?authorshipURI core:rank ?rank } \n"
|
+ " OPTIONAL { ?authorshipURI core:rank ?rank } \n"
|
||||||
+ "} UNION { \n"
|
+ "} UNION { \n"
|
||||||
+ " <http://vivo.cornell.edu/individual/n2251> core:relatedBy ?authorshipURI . \n"
|
+ " ?subject core:relatedBy ?authorshipURI . \n"
|
||||||
+ " ?authorshipURI a core:Authorship . \n"
|
+ " ?authorshipURI a core:Authorship . \n"
|
||||||
+ " ?authorshipURI core:relates ?authorURI . \n"
|
+ " ?authorshipURI core:relates ?authorURI . \n"
|
||||||
+ " ?authorURI a vcard:Individual . \n"
|
+ " ?authorURI a vcard:Individual . \n"
|
||||||
|
|
|
@ -1,139 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.documentBuilding;
|
|
||||||
|
|
||||||
import static edu.cornell.mannlib.vitro.webapp.search.VitroSearchTermNames.ALLTEXT;
|
|
||||||
import static edu.cornell.mannlib.vitro.webapp.search.VitroSearchTermNames.ALLTEXTUNSTEMMED;
|
|
||||||
import static edu.cornell.mannlib.vitro.webapp.search.VitroSearchTermNames.PREFERRED_TITLE;
|
|
||||||
|
|
||||||
import org.apache.commons.lang.StringUtils;
|
|
||||||
import org.apache.commons.logging.Log;
|
|
||||||
import org.apache.commons.logging.LogFactory;
|
|
||||||
|
|
||||||
import com.hp.hpl.jena.query.QuerySolution;
|
|
||||||
import com.hp.hpl.jena.query.ResultSet;
|
|
||||||
import com.hp.hpl.jena.rdf.model.RDFNode;
|
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.modelaccess.ContextModelAccess;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchInputDocument;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFService;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.RDFServiceUtils;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.utils.configuration.ContextModelsUser;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If there are any VCards on this Individual with Title objects, store the text
|
|
||||||
* in the Preferred Title search field, and the ALL_TEXT field.
|
|
||||||
*
|
|
||||||
* If there are any VCards on this Individual with EMail objects, store the text
|
|
||||||
* in the ALL_TEXT field.
|
|
||||||
*/
|
|
||||||
public class VIVOValuesFromVcards implements DocumentModifier, ContextModelsUser {
|
|
||||||
private static final Log log = LogFactory
|
|
||||||
.getLog(VIVOValuesFromVcards.class);
|
|
||||||
|
|
||||||
private static final String PREFERRED_TITLE_QUERY = ""
|
|
||||||
+ "prefix vcard: <http://www.w3.org/2006/vcard/ns#> \n"
|
|
||||||
+ "prefix obo: <http://purl.obolibrary.org/obo/> \n\n"
|
|
||||||
+ "SELECT ?title WHERE { \n" //
|
|
||||||
+ " ?uri obo:ARG_2000028 ?card . \n"
|
|
||||||
+ " ?card a vcard:Individual . \n"
|
|
||||||
+ " ?card vcard:hasTitle ?titleHolder . \n"
|
|
||||||
+ " ?titleHolder vcard:title ?title . \n" //
|
|
||||||
+ "}";
|
|
||||||
|
|
||||||
private static final ResultParser PREFERRED_TITLE_PARSER = new ResultParser() {
|
|
||||||
@Override
|
|
||||||
public void parse(String uri, QuerySolution solution, SearchInputDocument doc) {
|
|
||||||
String title = getLiteralValue(solution, "title");
|
|
||||||
if (StringUtils.isNotBlank(title)) {
|
|
||||||
doc.addField(PREFERRED_TITLE, title);
|
|
||||||
doc.addField(ALLTEXT, title);
|
|
||||||
doc.addField(ALLTEXTUNSTEMMED, title);
|
|
||||||
log.debug("Preferred Title for " + uri + ": '" + title + "'");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
private static final String EMAIL_QUERY = ""
|
|
||||||
+ "prefix vcard: <http://www.w3.org/2006/vcard/ns#> \n"
|
|
||||||
+ "prefix obo: <http://purl.obolibrary.org/obo/> \n\n"
|
|
||||||
+ "SELECT ?email WHERE { \n" //
|
|
||||||
+ " ?uri obo:ARG_2000028 ?card . \n"
|
|
||||||
+ " ?card a vcard:Individual . \n"
|
|
||||||
+ " ?card vcard:hasEmail ?emailHolder . \n"
|
|
||||||
+ " ?emailHolder vcard:email ?email . \n" //
|
|
||||||
+ "}";
|
|
||||||
|
|
||||||
private static final ResultParser EMAIL_PARSER = new ResultParser() {
|
|
||||||
@Override
|
|
||||||
public void parse(String uri, QuerySolution solution,
|
|
||||||
SearchInputDocument doc) {
|
|
||||||
String email = getLiteralValue(solution, "email");
|
|
||||||
if (StringUtils.isNotBlank(email)) {
|
|
||||||
doc.addField(ALLTEXT, email);
|
|
||||||
doc.addField(ALLTEXTUNSTEMMED, email);
|
|
||||||
log.debug("Email for " + uri + ": '" + email + "'");
|
|
||||||
}
|
|
||||||
}};
|
|
||||||
|
|
||||||
private RDFService rdfService;
|
|
||||||
private boolean shutdown = false;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void setContextModels(ContextModelAccess models) {
|
|
||||||
this.rdfService = models.getRDFService();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void modifyDocument(Individual individual, SearchInputDocument doc) {
|
|
||||||
if (individual == null)
|
|
||||||
return;
|
|
||||||
|
|
||||||
processQuery(individual, PREFERRED_TITLE_QUERY, PREFERRED_TITLE_PARSER,
|
|
||||||
doc);
|
|
||||||
processQuery(individual, EMAIL_QUERY, EMAIL_PARSER, doc);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void processQuery(Individual individual, String queryTemplate,
|
|
||||||
ResultParser resultParser, SearchInputDocument doc) {
|
|
||||||
String uri = "<" + individual.getURI() + "> ";
|
|
||||||
String query = queryTemplate.replaceAll("\\?uri", uri);
|
|
||||||
|
|
||||||
try {
|
|
||||||
ResultSet results = RDFServiceUtils.sparqlSelectQuery(query,
|
|
||||||
rdfService);
|
|
||||||
if (results != null) {
|
|
||||||
while (results.hasNext()) {
|
|
||||||
log.debug("Next solution");
|
|
||||||
QuerySolution solution = results.nextSolution();
|
|
||||||
resultParser.parse(uri, solution, doc);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
|
||||||
if (!shutdown) {
|
|
||||||
log.error("problem while running query '" + query + "'", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void shutdown() {
|
|
||||||
shutdown = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
private abstract static class ResultParser {
|
|
||||||
public abstract void parse(String uri, QuerySolution solution, SearchInputDocument doc);
|
|
||||||
|
|
||||||
String getLiteralValue(QuerySolution solution, String name) {
|
|
||||||
RDFNode node = solution.get(name);
|
|
||||||
if ((node != null) && (node.isLiteral())) {
|
|
||||||
String value = node.asLiteral().getString();
|
|
||||||
if (StringUtils.isNotBlank(value)) {
|
|
||||||
return value;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,182 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.documentBuilding;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Class that adds text from context nodes to Search Documents for
|
|
||||||
* foaf:Agent individuals.
|
|
||||||
*/
|
|
||||||
public class VivoAgentContextNodeFields extends ContextNodeFields{
|
|
||||||
|
|
||||||
static List<String> queriesForAgent = new ArrayList<String>();
|
|
||||||
|
|
||||||
public VivoAgentContextNodeFields(){
|
|
||||||
super(queriesForAgent);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected static final String prefix =
|
|
||||||
"prefix owl: <http://www.w3.org/2002/07/owl#> "
|
|
||||||
+ " prefix vitroDisplay: <http://vitro.mannlib.cornell.edu/ontologies/display/1.1#> "
|
|
||||||
+ " prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> "
|
|
||||||
+ " prefix core: <http://vivoweb.org/ontology/core#> "
|
|
||||||
+ " prefix foaf: <http://xmlns.com/foaf/0.1/> "
|
|
||||||
+ " prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> "
|
|
||||||
+ " prefix localNav: <http://vitro.mannlib.cornell.edu/ns/localnav#> "
|
|
||||||
+ " prefix bibo: <http://purl.org/ontology/bibo/> "
|
|
||||||
+ " prefix obo: <http://purl.obolibrary.org/obo/> \n" ;
|
|
||||||
|
|
||||||
|
|
||||||
//queries for foaf:Agent
|
|
||||||
static {
|
|
||||||
|
|
||||||
/* Positions for People */
|
|
||||||
queriesForAgent.add(prefix +
|
|
||||||
"SELECT " +
|
|
||||||
"(str(?ContextNodeProperty) as ?contextNodeProperty) WHERE {" +
|
|
||||||
" ?uri rdf:type foaf:Agent . " +
|
|
||||||
" ?uri ?b ?c . " +
|
|
||||||
" ?c rdf:type core:Position . " +
|
|
||||||
" ?c core:hrJobTitle ?ContextNodeProperty . }");
|
|
||||||
|
|
||||||
queriesForAgent.add(prefix + "SELECT " +
|
|
||||||
"(str(?ContextNodeProperty) as ?contextNodeProperty) WHERE {" +
|
|
||||||
" ?uri rdf:type foaf:Agent . " +
|
|
||||||
" ?uri ?b ?c . " +
|
|
||||||
" ?c rdf:type core:Position . " +
|
|
||||||
" ?c core:relates ?i . " +
|
|
||||||
" ?i rdf:type foaf:Organization . " +
|
|
||||||
" ?i rdfs:label ?ContextNodeProperty . }");
|
|
||||||
|
|
||||||
queriesForAgent.add(prefix + "SELECT " +
|
|
||||||
"(str(?ContextNodeProperty) as ?contextNodeProperty) WHERE {" +
|
|
||||||
" ?uri rdf:type foaf:Agent . " +
|
|
||||||
" ?uri ?b ?c . " +
|
|
||||||
" ?c rdf:type core:Position . " +
|
|
||||||
" ?c core:titleOrRole ?ContextNodeProperty . }");
|
|
||||||
|
|
||||||
/* HR Job Title */
|
|
||||||
|
|
||||||
queriesForAgent.add(prefix +
|
|
||||||
"SELECT " +
|
|
||||||
"(str(?HRJobTitle) as ?hrJobTitle) " +
|
|
||||||
"(str(?PositionInOrganization) as ?positionInOrganization) " +
|
|
||||||
"(str(?TitleOrRole) as ?titleOrRole) WHERE {"
|
|
||||||
|
|
||||||
+ "?uri rdf:type foaf:Agent ; ?b ?c . "
|
|
||||||
+ " ?c rdf:type core:Position . "
|
|
||||||
|
|
||||||
+ " OPTIONAL { ?c core:hrJobTitle ?HRJobTitle . } . "
|
|
||||||
+ " OPTIONAL { ?c core:relates ?i . ?i rdf:type foaf:Organization . ?i rdfs:label ?PositionInOrganization . } . "
|
|
||||||
+ " OPTIONAL { ?c core:titleOrRole ?TitleOrRole . } . "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
/* Advisor */
|
|
||||||
|
|
||||||
queriesForAgent.add(prefix + "SELECT " +
|
|
||||||
"(str(?ContextNodeProperty) as ?contextNodeProperty) WHERE {" +
|
|
||||||
" ?uri rdf:type foaf:Agent ; ?b ?c . " +
|
|
||||||
" ?c rdf:type core:AdvisingRelationship . " +
|
|
||||||
" ?c rdfs:label ?ContextNodeProperty . }");
|
|
||||||
|
|
||||||
queriesForAgent.add(prefix + "SELECT " +
|
|
||||||
"(str(?ContextNodeProperty) as ?contextNodeProperty) WHERE {" +
|
|
||||||
" ?uri rdf:type foaf:Agent ; ?b ?c . " +
|
|
||||||
" ?c rdf:type core:AdvisingRelationship . " +
|
|
||||||
" ?c core:degreeCandidacy ?e . ?e rdfs:label ?ContextNodeProperty . }");
|
|
||||||
|
|
||||||
queriesForAgent.add(prefix + "SELECT " +
|
|
||||||
"(str(?label) as ?adviseeLabel) WHERE {" +
|
|
||||||
" ?uri rdf:type foaf:Agent ." +
|
|
||||||
" ?c rdf:type core:AdvisingRelationship . " +
|
|
||||||
" ?c core:relates ?uri . " +
|
|
||||||
" ?uri obo:RO_0000053 ?advisorRole . " +
|
|
||||||
" ?advisorRole rdf:type core:AdvisorRole . " +
|
|
||||||
" ?c core:relates ?d . " +
|
|
||||||
" ?d rdf:type foaf:Person . " +
|
|
||||||
" ?d obo:RO_0000053 ?adviseeRole . " +
|
|
||||||
" ?adviseeRole rdf:type core:AdviseeRole . " +
|
|
||||||
" ?d rdfs:label ?ContextNodeProperty . }");
|
|
||||||
|
|
||||||
queriesForAgent.add(prefix + "SELECT " +
|
|
||||||
"(str(?label) as ?advisorLabel) WHERE {" +
|
|
||||||
" ?uri rdf:type foaf:Agent ." +
|
|
||||||
" ?c rdf:type core:AdvisingRelationship . " +
|
|
||||||
" ?c core:relates ?uri . " +
|
|
||||||
" ?uri obo:RO_0000053 ?adviseeRole . " +
|
|
||||||
" ?adviseeRole rdf:type core:AdviseeRole . " +
|
|
||||||
" ?c core:relates ?d . " +
|
|
||||||
" ?d rdf:type foaf:Person . " +
|
|
||||||
" ?d obo:RO_0000053 ?advisorRole . " +
|
|
||||||
" ?advisorRole rdf:type core:AdvisorRole . " +
|
|
||||||
" ?d rdfs:label ?ContextNodeProperty . }");
|
|
||||||
|
|
||||||
/* Author */
|
|
||||||
|
|
||||||
queriesForAgent.add(prefix + "SELECT " +
|
|
||||||
"(str(?ContextNodeProperty) as ?contextNodeProperty) WHERE {" +
|
|
||||||
" ?uri rdf:type foaf:Agent ; ?b ?c . " +
|
|
||||||
" ?c rdf:type core:Authorship . " +
|
|
||||||
" ?c core:relates ?f . " +
|
|
||||||
" ?f rdf:type foaf:Person . " +
|
|
||||||
" ?f rdfs:label ?ContextNodeProperty . " +
|
|
||||||
" FILTER( ?f != ?uri ) " +
|
|
||||||
"}");
|
|
||||||
|
|
||||||
queriesForAgent.add(prefix + "SELECT " +
|
|
||||||
"(str(?ContextNodeProperty) as ?contextNodeProperty) WHERE {" +
|
|
||||||
" ?uri rdf:type foaf:Agent ; ?b ?c . " +
|
|
||||||
" ?c rdf:type core:Authorship . " +
|
|
||||||
" ?c core:relates ?h . " +
|
|
||||||
" ?h rdf:type obo:IAO_0000030 . ?h rdfs:label ?ContextNodeProperty . }");
|
|
||||||
|
|
||||||
/* Award */
|
|
||||||
|
|
||||||
queriesForAgent.add(prefix +
|
|
||||||
"SELECT " +
|
|
||||||
"(str(?AwardLabel) as ?awardLabel) " +
|
|
||||||
"(str(?AwardConferredBy) as ?awardConferredBy) " +
|
|
||||||
"(str(?Description) as ?description) " +
|
|
||||||
"WHERE {"
|
|
||||||
+ " ?uri rdf:type foaf:Agent ; ?b ?c . "
|
|
||||||
+ " ?c rdf:type core:AwardReceipt . "
|
|
||||||
+ " OPTIONAL { ?c core:relates ?e . ?e rdf:type core:Award . ?e rdfs:label ?AwardLabel . } . "
|
|
||||||
+ " OPTIONAL { ?c core:assignedBy ?d . ?d rdf:type foaf:Organization . ?d rdfs:label ?AwardConferredBy . } . "
|
|
||||||
+ " OPTIONAL { ?c core:description ?Description . } . "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
/* Role In Organization */
|
|
||||||
|
|
||||||
queriesForAgent.add(prefix +
|
|
||||||
"SELECT (str(?OrganizationLabel) as ?organizationLabel) WHERE {"
|
|
||||||
+ " ?uri rdf:type foaf:Agent ; ?b ?c . "
|
|
||||||
+ " ?c rdf:type obo:BFO_0000023 ; core:roleContributesTo ?Organization ."
|
|
||||||
+ " ?Organization rdf:type core:Organization . "
|
|
||||||
+ " ?Organization rdfs:label ?OrganizationLabel . "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
/* Academic Degree / Educational Training */
|
|
||||||
|
|
||||||
queriesForAgent.add(prefix +
|
|
||||||
"SELECT " +
|
|
||||||
"(str(?AcademicDegreeLabel) as ?academicDegreeLabel) " +
|
|
||||||
"(str(?AcademicDegreeAbbreviation) as ?academicDegreeAbbreviation) " +
|
|
||||||
"(str(?MajorField) as ?majorField) " +
|
|
||||||
"(str(?DepartmentOrSchool) as ?departmentOrSchool) " +
|
|
||||||
"(str(?TrainingAtOrganizationLabel) as ?trainingAtOrganizationLabel) WHERE {"
|
|
||||||
|
|
||||||
+ " ?uri rdf:type foaf:Agent ; ?b ?c . "
|
|
||||||
+ " ?c rdf:type core:EducationalProcess . "
|
|
||||||
|
|
||||||
+ "OPTIONAL { ?c core:relates ?d . "
|
|
||||||
+ " ?d rdf:type core:AwardedDegree . "
|
|
||||||
+ " ?d core:relates ?e . "
|
|
||||||
+ " ?e rdf:type core:AcademicDegree . "
|
|
||||||
+ " ?e rdfs:label ?AcademicDegreeLabel . } . "
|
|
||||||
+ "OPTIONAL { ?c core:majorField ?MajorField .} ."
|
|
||||||
+ " OPTIONAL { ?c core:departmentOrSchool ?DepartmentOrSchool . }"
|
|
||||||
+ " OPTIONAL { ?c obo:RO_0000057 ?f . ?f rdf:type foaf:organization . ?f rdfs:label ?TrainingAtOrganizationLabel . } . "
|
|
||||||
+"}");
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,52 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.documentBuilding;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* DocumentModifier for adding rdfs:labels of individuals related via
|
|
||||||
* a advising relationship.
|
|
||||||
*
|
|
||||||
* @author bdc34
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
public class VivoISFAdvisingFields extends ContextNodeFields {
|
|
||||||
|
|
||||||
private static String VIVONS = "http://vivoweb.org/ontology/core#";
|
|
||||||
|
|
||||||
protected static final String prefix =
|
|
||||||
" prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> \n"
|
|
||||||
+ " prefix core: <" + VIVONS + "> \n"
|
|
||||||
+ " prefix foaf: <http://xmlns.com/foaf/0.1/> \n"
|
|
||||||
+ " prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> \n"
|
|
||||||
+ " prefix obo: <http://purl.obolibrary.org/obo/> \n" ;
|
|
||||||
|
|
||||||
static List<String> queries = new ArrayList<String>();
|
|
||||||
static{
|
|
||||||
queries.add( makeQueryForPeople() );
|
|
||||||
}
|
|
||||||
|
|
||||||
public VivoISFAdvisingFields(){
|
|
||||||
super(queries);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This query will get all the labels for the other
|
|
||||||
* person in the relationship.
|
|
||||||
*/
|
|
||||||
private static String makeQueryForPeople(){
|
|
||||||
return prefix +
|
|
||||||
"SELECT \n" +
|
|
||||||
"(str(?rawresult) as ?result) WHERE \n" +
|
|
||||||
"{\n" +
|
|
||||||
" ?uri core:relatedBy ?rel . \n" +
|
|
||||||
" ?rel rdf:type core:AdvisingRelationship . \n" +
|
|
||||||
" ?rel core:relates ?other . \n" +
|
|
||||||
" ?other rdfs:label ?rawresult . \n" +
|
|
||||||
" FILTER( ?other != ?uri ) \n" +
|
|
||||||
"}";
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,69 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.documentBuilding;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* DocumentModifier to populate Search index fields for the basic ISF relationships.
|
|
||||||
*
|
|
||||||
* This will add the all rdfs:labels of the related individuals to the search document.
|
|
||||||
*
|
|
||||||
* @author bdc34
|
|
||||||
*/
|
|
||||||
public class VivoISFBasicFields extends ContextNodeFields {
|
|
||||||
|
|
||||||
private static String VIVONS = "http://vivoweb.org/ontology/core#";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Subtypes of vivo:Relationship that get handled by this class.
|
|
||||||
*/
|
|
||||||
private static String[] RELATIONSHIP_TYPES = {
|
|
||||||
VIVONS + "Position",
|
|
||||||
VIVONS + "Authorship",
|
|
||||||
VIVONS + "Collaboration",
|
|
||||||
VIVONS + "Affiliation"
|
|
||||||
};
|
|
||||||
|
|
||||||
static List<String> queries = new ArrayList<String>();
|
|
||||||
|
|
||||||
public VivoISFBasicFields(){
|
|
||||||
super(queries);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected static final String prefix =
|
|
||||||
" prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> \n"
|
|
||||||
+ " prefix core: <" + VIVONS + "> \n"
|
|
||||||
+ " prefix foaf: <http://xmlns.com/foaf/0.1/> \n"
|
|
||||||
+ " prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> \n"
|
|
||||||
+ " prefix obo: <http://purl.obolibrary.org/obo/> \n" ;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static {
|
|
||||||
|
|
||||||
/* make a string of the RELATIONSHIP_TYPES for use in
|
|
||||||
* a SPARQL IN clause */
|
|
||||||
String types = "";
|
|
||||||
for( int i = 0 ; i < RELATIONSHIP_TYPES.length ; i++ ){
|
|
||||||
types += "<" + RELATIONSHIP_TYPES[i] + ">";
|
|
||||||
if( i != RELATIONSHIP_TYPES.length - 1 ){
|
|
||||||
types += ", ";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
queries.add(
|
|
||||||
prefix +
|
|
||||||
"SELECT \n" +
|
|
||||||
"(str(?rawresult) as ?result) WHERE \n" +
|
|
||||||
"{\n" +
|
|
||||||
" ?uri core:relatedBy ?rel . \n" +
|
|
||||||
" ?rel rdf:type ?type . \n" +
|
|
||||||
" ?rel core:relates ?other . \n" +
|
|
||||||
" ?other rdfs:label ?rawresult . \n" +
|
|
||||||
" FILTER ( ?type IN ( " + types + " ) )\n" +
|
|
||||||
"}" );
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,55 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.documentBuilding;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class VivoISFEducationFields extends ContextNodeFields {
|
|
||||||
private static String VIVONS = "http://vivoweb.org/ontology/core#";
|
|
||||||
|
|
||||||
protected static final String prefix =
|
|
||||||
" prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> \n"
|
|
||||||
+ " prefix core: <" + VIVONS + "> \n"
|
|
||||||
+ " prefix foaf: <http://xmlns.com/foaf/0.1/> \n"
|
|
||||||
+ " prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> \n"
|
|
||||||
+ " prefix obo: <http://purl.obolibrary.org/obo/> \n" ;
|
|
||||||
|
|
||||||
public VivoISFEducationFields(){
|
|
||||||
super(queries);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This query will get all the labels for the degree.
|
|
||||||
*/
|
|
||||||
private static String queryForDegree =
|
|
||||||
prefix +
|
|
||||||
"SELECT \n" +
|
|
||||||
"(str(?rawresult) as ?result) WHERE \n" +
|
|
||||||
"{\n" +
|
|
||||||
" ?uri core:relates ?deg . \n" +
|
|
||||||
" ?deg rdf:type core:AwardedDegree . \n" +
|
|
||||||
" ?deg rdfs:label ?rawresult . \n" +
|
|
||||||
"}";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This will get all labels for the organization.
|
|
||||||
*/
|
|
||||||
private static String queryForOrganization =
|
|
||||||
prefix +
|
|
||||||
"SELECT \n" +
|
|
||||||
"(str(?rawresult) as ?result) WHERE \n" +
|
|
||||||
"{\n" +
|
|
||||||
" ?uri core:relates ?deg . \n" +
|
|
||||||
" ?deg rdf:type core:AwardedDegree . \n" +
|
|
||||||
" ?deg core:assignedBy ?org . \n" +
|
|
||||||
" ?org rdfs:label ?rawresult . \n" +
|
|
||||||
"}";
|
|
||||||
|
|
||||||
static List<String> queries = new ArrayList<String>();
|
|
||||||
|
|
||||||
static{
|
|
||||||
queries.add( queryForDegree );
|
|
||||||
queries.add( queryForOrganization );
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,158 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.documentBuilding;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/*
|
|
||||||
* This DocumentModifier is for the ISF style grants.
|
|
||||||
* It will
|
|
||||||
* add people's names to the grant's search Document
|
|
||||||
* add the grant's name to the people's search Document
|
|
||||||
* add the grant's name to the Organization's search Document
|
|
||||||
* add the organization's name to the grant's search Document
|
|
||||||
* add the grant's names to the project's search Document
|
|
||||||
* add the people's names to the project's search Document
|
|
||||||
* add the project's name to the grant's search Document
|
|
||||||
* add the project's name to the people's search Document
|
|
||||||
*/
|
|
||||||
public class VivoISFGrantFields extends ContextNodeFields {
|
|
||||||
private static String VIVONS = "http://vivoweb.org/ontology/core#";
|
|
||||||
|
|
||||||
protected static final String prefix =
|
|
||||||
" prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> \n"
|
|
||||||
+ " prefix core: <" + VIVONS + "> \n"
|
|
||||||
+ " prefix foaf: <http://xmlns.com/foaf/0.1/> \n"
|
|
||||||
+ " prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> \n"
|
|
||||||
+ " prefix obo: <http://purl.obolibrary.org/obo/> \n" ;
|
|
||||||
|
|
||||||
public VivoISFGrantFields(){
|
|
||||||
super(queries);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Query to add people's names to the grant's search Document.
|
|
||||||
* ?uri is the URI of a grant.
|
|
||||||
*/
|
|
||||||
private static String peopleForGrant =
|
|
||||||
prefix +
|
|
||||||
"SELECT (str(?rawresult) as ?result) WHERE {\n" +
|
|
||||||
" ?uri rdf:type core:Grant . \n" +
|
|
||||||
" ?uri core:relates ?person . \n" +
|
|
||||||
" ?person rdf:type foaf:Person . \n" +
|
|
||||||
" ?person rdfs:label ?rawresult . \n" +
|
|
||||||
"}";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Query to add the grant's name to the people's search Document.
|
|
||||||
* ?uri is the URI of a person.
|
|
||||||
*/
|
|
||||||
private static String grantsForPerson =
|
|
||||||
prefix +
|
|
||||||
"SELECT \n" +
|
|
||||||
"(str(?rawresult) as ?result) WHERE \n" +
|
|
||||||
"{\n" +
|
|
||||||
" ?uri rdf:type foaf:Person . \n" +
|
|
||||||
" ?grant core:relates ?uri . \n" +
|
|
||||||
" ?grant rdf:type core:Grant . \n" +
|
|
||||||
" ?grant rdfs:label ?rawresult . \n" +
|
|
||||||
"}";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Query to add the grant's name to the Organization's search Document.
|
|
||||||
* ?uri is the URI of an Organization.
|
|
||||||
*/
|
|
||||||
private static String grantsForOrganization =
|
|
||||||
prefix +
|
|
||||||
"SELECT (str(?rawresult) as ?result) WHERE {\n" +
|
|
||||||
" ?uri rdf:type foaf:Organization . \n" +
|
|
||||||
" ?grant core:relates ?uri . \n" +
|
|
||||||
" ?grant rdf:type core:Grant . \n" +
|
|
||||||
" ?grant rdfs:label ?rawresult . \n" +
|
|
||||||
"}";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Query to add the organization's name to the grant's search Document.
|
|
||||||
* ?uri is the URI of a grant.
|
|
||||||
*/
|
|
||||||
private static String organizationsForGrant =
|
|
||||||
prefix +
|
|
||||||
"SELECT (str(?rawresult) as ?result) WHERE {\n" +
|
|
||||||
" ?uri rdf:type core:Grant . \n" +
|
|
||||||
" ?uri core:relates ?org . \n" +
|
|
||||||
" ?org rdf:type foaf:Organization . \n" +
|
|
||||||
" ?org rdfs:label ?rawresult . \n" +
|
|
||||||
"}";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Query to add the grant's names to the project's search Document.
|
|
||||||
* ?uir is the URI of a Project.
|
|
||||||
*/
|
|
||||||
private static String grantsForProject =
|
|
||||||
prefix +
|
|
||||||
"SELECT (str(?rawresult) as ?result) WHERE {\n" +
|
|
||||||
" ?uri rdf:type core:Project . \n" +
|
|
||||||
" ?role obo:BFO_0000054 ?uri . \n" +
|
|
||||||
" ?grant core:relates ?role . \n" +
|
|
||||||
" ?grant rdf:type core:Grant . \n" +
|
|
||||||
" ?grant rdfs:label ?rawresult . \n" +
|
|
||||||
"}";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Query to add the people's names to the project's search Document.
|
|
||||||
* ?uri is the URI of a Project.
|
|
||||||
*/
|
|
||||||
private static String peopleForProject =
|
|
||||||
prefix +
|
|
||||||
"SELECT (str(?rawresult) as ?result) WHERE {\n" +
|
|
||||||
" ?uri rdf:type core:Project . \n" +
|
|
||||||
" ?role obo:BFO_0000054 ?uri . \n" +
|
|
||||||
" ?role obo:RO_0000053 ?person . \n" +
|
|
||||||
" ?person rdf:type foaf:Person . \n" +
|
|
||||||
" ?person rdfs:label ?rawresult . \n" +
|
|
||||||
"}";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Query to add the project's name to the grant's search Document.
|
|
||||||
* ?uri is the URI of a grant.
|
|
||||||
*/
|
|
||||||
private static String projectsForGrant =
|
|
||||||
prefix +
|
|
||||||
"SELECT \n" +
|
|
||||||
"(str(?rawresult) as ?result) WHERE \n" +
|
|
||||||
"{\n" +
|
|
||||||
" ?uri rdf:type core:Grant. \n" +
|
|
||||||
" ?uri core:relates ?role . \n" +
|
|
||||||
" ?role obo:BFO_0000054 ?project . \n" +
|
|
||||||
" ?project rdf:type core:Project . \n" +
|
|
||||||
" ?project rdfs:label ?rawresult . \n" +
|
|
||||||
"}";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Query to add the project's name to the people's search Document.
|
|
||||||
* ?uri is the URI of a person.
|
|
||||||
*/
|
|
||||||
private static String projectsForPerson =
|
|
||||||
prefix +
|
|
||||||
"SELECT (str(?rawresult) as ?result) WHERE {\n" +
|
|
||||||
" ?uri rdf:type foaf:Person . \n" +
|
|
||||||
" ?uri obo:RO_0000053 ?role . \n" +
|
|
||||||
" ?role obo:BFO_0000054 ?project . \n" +
|
|
||||||
" ?project rdf:type core:Project . \n" +
|
|
||||||
" ?project rdfs:label ?rawresult . \n" +
|
|
||||||
"}";
|
|
||||||
|
|
||||||
static List<String> queries = new ArrayList<String>();
|
|
||||||
|
|
||||||
static{
|
|
||||||
queries.add( peopleForGrant );
|
|
||||||
queries.add( grantsForPerson );
|
|
||||||
queries.add( grantsForOrganization );
|
|
||||||
queries.add( organizationsForGrant );
|
|
||||||
queries.add( grantsForProject );
|
|
||||||
queries.add( peopleForProject );
|
|
||||||
queries.add( projectsForGrant );
|
|
||||||
queries.add( projectsForPerson );
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,59 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.documentBuilding;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This class will:
|
|
||||||
* add people's names to organization's search Documents.
|
|
||||||
* add organization names to people's search Documents.
|
|
||||||
*
|
|
||||||
* @author bdc34
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
public class VivoISFMemberFields extends ContextNodeFields {
|
|
||||||
private static String VIVONS = "http://vivoweb.org/ontology/core#";
|
|
||||||
|
|
||||||
protected static final String prefix =
|
|
||||||
" prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> \n"
|
|
||||||
+ " prefix core: <" + VIVONS + "> \n"
|
|
||||||
+ " prefix foaf: <http://xmlns.com/foaf/0.1/> \n"
|
|
||||||
+ " prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> \n"
|
|
||||||
+ " prefix obo: <http://purl.obolibrary.org/obo/> \n" ;
|
|
||||||
|
|
||||||
public VivoISFMemberFields(){
|
|
||||||
super(queries);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Add people's names to organization's search Documents.
|
|
||||||
*/
|
|
||||||
private static String peopleForOrganization =
|
|
||||||
prefix +
|
|
||||||
"SELECT (str(?rawresult) as ?result) WHERE {\n" +
|
|
||||||
" ?uri rdf:type foaf:Organization . \n" +
|
|
||||||
" ?role core:roleContributesTo ?uri . \n" +
|
|
||||||
" ?person obo:RO_0000053 ?role . \n" +
|
|
||||||
" ?person rdfs:label ?rawresult .\n" +
|
|
||||||
"}";
|
|
||||||
|
|
||||||
/**
|
|
||||||
* add organization names to people's search Documents.
|
|
||||||
*/
|
|
||||||
private static String organizationForPeople =
|
|
||||||
prefix +
|
|
||||||
"SELECT (str(?rawresult) as ?result) WHERE {\n" +
|
|
||||||
" ?uri rdf:type foaf:Person . \n" +
|
|
||||||
" ?uri obo:RO_0000053 / core:roleContributesTo / rdfs:label ?rawresult . \n" +
|
|
||||||
"}";
|
|
||||||
|
|
||||||
|
|
||||||
static List<String> queries = new ArrayList<String>();
|
|
||||||
|
|
||||||
static{
|
|
||||||
queries.add( peopleForOrganization );
|
|
||||||
queries.add( organizationForPeople );
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,81 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.documentBuilding;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Class that adds text from context nodes to search index Documents for
|
|
||||||
* obo:IAO_0000030 individuals.
|
|
||||||
*
|
|
||||||
* @author bdc34
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
public class VivoInformationResourceContextNodeFields extends ContextNodeFields{
|
|
||||||
|
|
||||||
static List<String> queriesForInformationResource = new ArrayList<String>();
|
|
||||||
|
|
||||||
public VivoInformationResourceContextNodeFields(){
|
|
||||||
super(queriesForInformationResource);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected static final String prefix =
|
|
||||||
"prefix owl: <http://www.w3.org/2002/07/owl#> "
|
|
||||||
+ " prefix vitroDisplay: <http://vitro.mannlib.cornell.edu/ontologies/display/1.1#> "
|
|
||||||
+ " prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> "
|
|
||||||
+ " prefix core: <http://vivoweb.org/ontology/core#> "
|
|
||||||
+ " prefix foaf: <http://xmlns.com/foaf/0.1/> "
|
|
||||||
+ " prefix obo: <http://purl.obolibrary.org/> "
|
|
||||||
+ " prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> "
|
|
||||||
+ " prefix localNav: <http://vitro.mannlib.cornell.edu/ns/localnav#> "
|
|
||||||
+ " prefix bibo: <http://purl.org/ontology/bibo/> ";
|
|
||||||
|
|
||||||
|
|
||||||
//queries for obo:IAO_0000030
|
|
||||||
static {
|
|
||||||
|
|
||||||
/* linked author labels */
|
|
||||||
|
|
||||||
queriesForInformationResource
|
|
||||||
.add(prefix
|
|
||||||
+ "SELECT (str(?ContextNodeProperty) as ?contextNodeProperty) WHERE {"
|
|
||||||
+ "?uri rdf:type obo:IAO_0000030 . "
|
|
||||||
+ "?uri core:relatedBy ?a . "
|
|
||||||
+ "?a rdf:type core:Authorship ."
|
|
||||||
+ "?a core:relates ?b ."
|
|
||||||
+ "?b rdf:type foaf:Agent ."
|
|
||||||
+ "?b rdfs:label ?ContextNodeProperty .}");
|
|
||||||
|
|
||||||
/* features */
|
|
||||||
|
|
||||||
queriesForInformationResource
|
|
||||||
.add(prefix
|
|
||||||
+ "SELECT (str(?ContextNodeProperty) as ?contextNodeProperty) WHERE {"
|
|
||||||
+ "?uri rdf:type obo:IAO_0000030 . "
|
|
||||||
+ "?uri core:features ?i . ?i rdfs:label ?ContextNodeProperty ."
|
|
||||||
+ "}");
|
|
||||||
|
|
||||||
/* editor */
|
|
||||||
|
|
||||||
queriesForInformationResource
|
|
||||||
.add(prefix
|
|
||||||
+ "SELECT (str(?ContextNodeProperty) as ?contextNodeProperty) WHERE {"
|
|
||||||
+ "?uri rdf:type obo:IAO_0000030 . "
|
|
||||||
+ "?uri core:relatedBy ?e . "
|
|
||||||
+ "?e rdf:type core:Editorship ."
|
|
||||||
+ "?e core:relates ?i ."
|
|
||||||
+ "?i rdf:type foaf:Agent ."
|
|
||||||
+ "?i rdfs:label ?ContextNodeProperty ."
|
|
||||||
+ "}");
|
|
||||||
|
|
||||||
/* subject area */
|
|
||||||
|
|
||||||
queriesForInformationResource
|
|
||||||
.add(prefix
|
|
||||||
+ "SELECT (str(?ContextNodeProperty) as ?contextNodeProperty) WHERE {"
|
|
||||||
+ "?uri rdf:type obo:IAO_0000030 . "
|
|
||||||
+ "?uri core:hasSubjectArea ?f . ?f rdfs:label ?ContextNodeProperty ."
|
|
||||||
+ "}");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,769 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.indexing;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.HashSet;
|
|
||||||
import java.util.Iterator;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Set;
|
|
||||||
|
|
||||||
import org.apache.commons.logging.Log;
|
|
||||||
import org.apache.commons.logging.LogFactory;
|
|
||||||
|
|
||||||
import com.hp.hpl.jena.query.QuerySolution;
|
|
||||||
import com.hp.hpl.jena.query.QuerySolutionMap;
|
|
||||||
import com.hp.hpl.jena.query.ResultSet;
|
|
||||||
import com.hp.hpl.jena.rdf.model.RDFNode;
|
|
||||||
import com.hp.hpl.jena.rdf.model.Resource;
|
|
||||||
import com.hp.hpl.jena.rdf.model.ResourceFactory;
|
|
||||||
import com.hp.hpl.jena.rdf.model.Statement;
|
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.jena.QueryUtils;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFService;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.search.beans.StatementToURIsToUpdate;
|
|
||||||
|
|
||||||
public class AdditionalURIsForContextNodes implements StatementToURIsToUpdate {
|
|
||||||
|
|
||||||
private final RDFService rdfService;
|
|
||||||
private Set<String> alreadyChecked;
|
|
||||||
private long accumulatedTime = 0;
|
|
||||||
|
|
||||||
private static final List<String> multiValuedQueriesForAgent = new ArrayList<String>();
|
|
||||||
private static final String multiValuedQueryForInformationContentEntity;
|
|
||||||
private static final List<String> multiValuedQueriesForRole = new ArrayList<String>();
|
|
||||||
private static final List<String>queryList;
|
|
||||||
|
|
||||||
private Log log = LogFactory.getLog(AdditionalURIsForContextNodes.class);
|
|
||||||
|
|
||||||
|
|
||||||
public AdditionalURIsForContextNodes( RDFService rdfService){
|
|
||||||
this.rdfService = rdfService;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public List<String> findAdditionalURIsToIndex(Statement stmt) {
|
|
||||||
|
|
||||||
if( stmt != null ){
|
|
||||||
long start = System.currentTimeMillis();
|
|
||||||
|
|
||||||
List<String>urisToIndex = new ArrayList<String>();
|
|
||||||
if(stmt.getSubject() != null && stmt.getSubject().isURIResource() ){
|
|
||||||
String subjUri = stmt.getSubject().getURI();
|
|
||||||
if( subjUri != null && ! alreadyChecked.contains( subjUri )){
|
|
||||||
urisToIndex.addAll( findAdditionalURIsToIndex(subjUri));
|
|
||||||
alreadyChecked.add(subjUri);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if( stmt.getObject() != null && stmt.getObject().isURIResource() ){
|
|
||||||
String objUri = stmt.getSubject().getURI();
|
|
||||||
if( objUri != null && ! alreadyChecked.contains(objUri)){
|
|
||||||
urisToIndex.addAll( findAdditionalURIsToIndex(objUri));
|
|
||||||
alreadyChecked.add(objUri);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
accumulatedTime += (System.currentTimeMillis() - start ) ;
|
|
||||||
return urisToIndex;
|
|
||||||
}else{
|
|
||||||
return Collections.emptyList();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void startIndexing() {
|
|
||||||
alreadyChecked = new HashSet<String>();
|
|
||||||
accumulatedTime = 0L;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void endIndxing() {
|
|
||||||
log.debug( "Accumulated time for this run of the index: " + accumulatedTime + " msec");
|
|
||||||
alreadyChecked = null;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected List<String> findAdditionalURIsToIndex(String uri) {
|
|
||||||
|
|
||||||
List<String> uriList = new ArrayList<String>();
|
|
||||||
|
|
||||||
for (String query : queryList) {
|
|
||||||
QuerySolutionMap initialBinding = new QuerySolutionMap();
|
|
||||||
Resource uriResource = ResourceFactory.createResource(uri);
|
|
||||||
initialBinding.add("uri", uriResource);
|
|
||||||
|
|
||||||
ResultSet results = QueryUtils.getQueryResults(query,
|
|
||||||
initialBinding, rdfService);
|
|
||||||
while (results.hasNext()) {
|
|
||||||
QuerySolution soln = results.nextSolution();
|
|
||||||
Iterator<String> iter = soln.varNames();
|
|
||||||
while (iter.hasNext()) {
|
|
||||||
String name = iter.next();
|
|
||||||
RDFNode node = soln.get(name);
|
|
||||||
if (node != null) {
|
|
||||||
uriList.add("" + node.toString());
|
|
||||||
} else {
|
|
||||||
log.debug(name + " is null");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if( log.isDebugEnabled() )
|
|
||||||
log.debug( "additional uris for " + uri + " are " + uriList);
|
|
||||||
|
|
||||||
return uriList;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private static final String prefix = "prefix owl: <http://www.w3.org/2002/07/owl#> \n"
|
|
||||||
+ " prefix vitroDisplay: <http://vitro.mannlib.cornell.edu/ontologies/display/1.1#> \n"
|
|
||||||
+ " prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> \n"
|
|
||||||
+ " prefix core: <http://vivoweb.org/ontology/core#> \n"
|
|
||||||
+ " prefix foaf: <http://xmlns.com/foaf/0.1/> \n"
|
|
||||||
+ " prefix obo: <http://purl.obolibrary.org/obo/> \n"
|
|
||||||
+ " prefix vcard: <http://www.w3.org/2006/vcard/ns#> \n"
|
|
||||||
+ " prefix event: <http://purl.org/NET/c4dm/event.owl#> \n"
|
|
||||||
+ " prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> \n"
|
|
||||||
+ " prefix localNav: <http://vitro.mannlib.cornell.edu/ns/localnav#> \n"
|
|
||||||
+ " prefix bibo: <http://purl.org/ontology/bibo/> \n";
|
|
||||||
|
|
||||||
static{
|
|
||||||
|
|
||||||
// If a person changes then update
|
|
||||||
// organizations for positions
|
|
||||||
multiValuedQueriesForAgent.add(prefix +
|
|
||||||
"SELECT DISTINCT \n" +
|
|
||||||
" (str(?i) as ?positionInOrganization) \n" +
|
|
||||||
" WHERE {\n"
|
|
||||||
|
|
||||||
+ "?uri rdf:type foaf:Agent ; core:relatedBy ?c . \n"
|
|
||||||
+ " ?c rdf:type core:Position . \n"
|
|
||||||
|
|
||||||
+ " OPTIONAL { ?c core:relates ?i . ?i rdf:type foaf:Organization } . \n"
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If a person changes then update
|
|
||||||
// advisee, linkedAuthor and informationResource
|
|
||||||
multiValuedQueriesForAgent.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?advisee) \n" +
|
|
||||||
" (str(?f) as ?linkedAuthor) (str(?h) as ?linkedInformationResource) WHERE { {\n"
|
|
||||||
|
|
||||||
+ "?uri rdf:type foaf:Agent . \n"
|
|
||||||
+ "?uri core:relatedBy ?c . \n"
|
|
||||||
+ "?c rdf:type core:AdvisingRelationship . \n"
|
|
||||||
+ "?c core:relates ?d . \n"
|
|
||||||
+ "?d rdf:type core:AdviseeRole . \n"
|
|
||||||
+ "?d obo:RO_0000052 ?e . \n"
|
|
||||||
+ "?e rdf:type foaf:Person . \n"
|
|
||||||
+ "} \n"
|
|
||||||
+ "UNION { \n"
|
|
||||||
+ " ?uri rdf:type foaf:Agent . \n"
|
|
||||||
+ " ?uri core:relatedBy ?c . \n"
|
|
||||||
+ " ?c rdf:type core:Authorship . \n"
|
|
||||||
+ " OPTIONAL {?c core:relates ?f . \n"
|
|
||||||
+ " ?f rdf:type foaf:Person . } \n"
|
|
||||||
+ " OPTIONAL { ?c core:relates ?h . \n"
|
|
||||||
+ " ?h rdf:type obo:IAO_0000030 . } \n"
|
|
||||||
+ " } } ");
|
|
||||||
|
|
||||||
// If a person changes then update
|
|
||||||
// award giver
|
|
||||||
multiValuedQueriesForAgent.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?awardConferredBy) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
|
|
||||||
+ "?uri rdf:type foaf:Agent ; ?b ?c . \n"
|
|
||||||
+ " ?c rdf:type core:AwardReceipt . \n"
|
|
||||||
|
|
||||||
+ " OPTIONAL { ?c core:assignedBy ?d . } . \n"
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If a person changes then update
|
|
||||||
// organization for role
|
|
||||||
multiValuedQueriesForAgent.add(prefix +
|
|
||||||
"SELECT (str(?Organization) as ?organization) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
|
|
||||||
+ "?uri rdf:type foaf:Agent ; ?b ?c . \n"
|
|
||||||
+ " ?c rdf:type obo:BFO_0000023 ; obo:BFO_0000054 ?Organization .\n"
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If a person changes then update
|
|
||||||
// organization in educational training
|
|
||||||
multiValuedQueriesForAgent.add(prefix +
|
|
||||||
"SELECT \n" +
|
|
||||||
"(str(?e) as ?trainingAtOrganization) WHERE {\n"
|
|
||||||
|
|
||||||
+ " ?uri rdf:type foaf:Agent ; ?b ?c . \n"
|
|
||||||
+ " ?c rdf:type core:EducationalProcess . \n"
|
|
||||||
|
|
||||||
+ " OPTIONAL { ?c obo:RO_0000057 ?e . \n"
|
|
||||||
+ " ?e rdf:type foaf:Organization . } . "
|
|
||||||
+"}");
|
|
||||||
|
|
||||||
// If an organization changes then update
|
|
||||||
// people in head of relations
|
|
||||||
multiValuedQueriesForAgent.add(
|
|
||||||
" # for organization, get leader \n" +
|
|
||||||
prefix +
|
|
||||||
"SELECT \n" +
|
|
||||||
"(str(?e) as ?LeaderPerson ) WHERE {\n"
|
|
||||||
|
|
||||||
+ " ?uri rdf:type foaf:Agent . \n"
|
|
||||||
+ " ?uri core:contributingRole ?c . \n"
|
|
||||||
+ " ?c rdf:type core:LeaderRole . \n"
|
|
||||||
|
|
||||||
+ " OPTIONAL { ?c obo:RO_0000052 ?e . \n"
|
|
||||||
+ " ?e rdf:type foaf:Person . } . "
|
|
||||||
+"}");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
//multivalued query for obo:IAO_0000030 (Information Content Entity)
|
|
||||||
static {
|
|
||||||
|
|
||||||
multiValuedQueryForInformationContentEntity = prefix +
|
|
||||||
"SELECT (str(?b) as ?linkedAuthor) (str(?d) as ?linkedInformationResource) \n"
|
|
||||||
+ "(str(?f) as ?editor) \n" +
|
|
||||||
"(str(?i) as ?features) WHERE {\n"
|
|
||||||
|
|
||||||
+ " ?uri rdf:type obo:IAO_0000030 . \n"
|
|
||||||
|
|
||||||
+ " OPTIONAL { ?uri core:relatedBy ?a . \n"
|
|
||||||
+ " ?a rdf:type core:Authorship . \n"
|
|
||||||
+ " ?a core:relates ?b . ?b rdf:type foaf:Person .\n"
|
|
||||||
+ " ?a core:relates ?d . ?d rdf:type obo:IAO_0000030 .\n"
|
|
||||||
+ "} . "
|
|
||||||
|
|
||||||
+ " OPTIONAL { ?uri core:relatedBy ?e . \n"
|
|
||||||
+ " ?e rdf:type core:Editorship . \n"
|
|
||||||
+ " ?e core:relates ?f . ?f rdf:type foaf:Person .\n"
|
|
||||||
+ "} . "
|
|
||||||
+ " OPTIONAL { ?uri core:features ?i . } . \n"
|
|
||||||
|
|
||||||
+"}" ;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
protected static List<String> queriesForAuthorship(){
|
|
||||||
List<String> queries = new ArrayList<String>();
|
|
||||||
|
|
||||||
//get additional URIs of information resources from author side
|
|
||||||
queries.add(
|
|
||||||
prefix
|
|
||||||
+ "SELECT (str(?a) as ?infoResource) WHERE {\n"
|
|
||||||
|
|
||||||
+ " ?uri rdf:type foaf:Person . \n"
|
|
||||||
+ " ?uri core:relatedBy ?aship .\n"
|
|
||||||
+ " ?aship rdf:type core:Authorship .\n"
|
|
||||||
+ "OPTIONAL { ?aship core:relates ?a . ?a rdf:type obo:IAO_0000030 } .\n"
|
|
||||||
+"}" );
|
|
||||||
|
|
||||||
//get additional URIs of authors from information resource side
|
|
||||||
queries.add(
|
|
||||||
prefix
|
|
||||||
+ "SELECT (str(?a) as ?author ) WHERE {\n"
|
|
||||||
|
|
||||||
+ " ?uri rdf:type obo:IAO_0000030 . \n"
|
|
||||||
+ " ?uri core:relatedBy ?aship . ?aship rdf:type core:Authorship . \n"
|
|
||||||
+ "OPTIONAL { ?aship core:relates ?a . ?a rdf:type foaf:Person } .\n"
|
|
||||||
+"}" );
|
|
||||||
return queries;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected static List<String> queriesForURLLink(){
|
|
||||||
List<String> queries = new ArrayList<String>();
|
|
||||||
|
|
||||||
//get additional URIs when URLLink is changed
|
|
||||||
queries.add(
|
|
||||||
prefix
|
|
||||||
+ "SELECT (str(?x) as ?individual) WHERE {\n"
|
|
||||||
|
|
||||||
+ " ?i rdf:type vcard:Individual . \n"
|
|
||||||
+ " ?i vcard:hasURL ?uri . \n"
|
|
||||||
+ " ?i obo:ARG_2000029 ?x . \n"
|
|
||||||
+"}" );
|
|
||||||
|
|
||||||
return queries;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected static List<String> queriesForEducationalTraining(){
|
|
||||||
List<String> queries = new ArrayList<String>();
|
|
||||||
|
|
||||||
//if person changes, no additional URIs need to be
|
|
||||||
//changed because the person is not displayed on the
|
|
||||||
//degree individual or on the degree granting organization
|
|
||||||
|
|
||||||
//if the degree changes, the person needs to be updated
|
|
||||||
//since the degree name is shown on the person page.
|
|
||||||
queries.add(
|
|
||||||
prefix
|
|
||||||
+ " SELECT (str(?person) as ?personUri) WHERE {\n"
|
|
||||||
|
|
||||||
+ " ?uri rdf:type core:AcademicDegree . \n"
|
|
||||||
+ " ?uri core:relatedBy ?awardedDegree .\n"
|
|
||||||
+ " ?awardedDegree rdf:type core:AwardedDegree .\n"
|
|
||||||
+ " ?awardedDegree core:relates ?person .\n"
|
|
||||||
+ " ?person rdf:type foaf:Person .\n"
|
|
||||||
+"}" );
|
|
||||||
|
|
||||||
//if the organization changes the person needs to be updated
|
|
||||||
//since the organization name is shown on the person page.
|
|
||||||
queries.add(
|
|
||||||
prefix
|
|
||||||
+ " SELECT (str(?person) as ?personUri) WHERE {\n"
|
|
||||||
|
|
||||||
+ " ?uri rdf:type foaf:Organization . \n"
|
|
||||||
+ " ?uri obo:RO_0000056 ?edTrainingNode .\n"
|
|
||||||
+ " ?edTrainingNode rdf:type core:EducationalProcess . \n"
|
|
||||||
+ " ?edTrainingNode obo:RO_0000057 ?person . \n"
|
|
||||||
+ " ?person rdf:type foaf:Person ."
|
|
||||||
+"}" );
|
|
||||||
return queries;
|
|
||||||
}
|
|
||||||
|
|
||||||
protected static List<String> queriesForPosition(){
|
|
||||||
List<String> queries = new ArrayList<String>();
|
|
||||||
|
|
||||||
//If an organization changes, update people
|
|
||||||
queries.add(
|
|
||||||
prefix
|
|
||||||
+ " SELECT (str(?person) as ?personUri) WHERE {\n"
|
|
||||||
|
|
||||||
+ " ?uri rdf:type foaf:Organization . \n"
|
|
||||||
+ " ?uri core:relatedBy ?positionNode .\n"
|
|
||||||
+ " ?positionNode rdf:type core:Position .\n"
|
|
||||||
+ " ?positionNode core:relates ?person . \n"
|
|
||||||
+ " ?person rdf:type foaf:Person .\n"
|
|
||||||
+"}" );
|
|
||||||
|
|
||||||
|
|
||||||
//if people change, update organizations
|
|
||||||
queries.add(
|
|
||||||
prefix
|
|
||||||
+ " SELECT (str(?org) as ?orgUri) WHERE {\n"
|
|
||||||
|
|
||||||
+ " ?uri rdf:type foaf:Person . \n"
|
|
||||||
+ " ?uri core:relatedBy ?positionNode .\n"
|
|
||||||
+ " ?positionNode rdf:type core:Position .\n"
|
|
||||||
+ " ?positionNode core:relates ?org . \n"
|
|
||||||
+ " ?org rdf:type foaf:Organization .\n"
|
|
||||||
+"}" );
|
|
||||||
return queries;
|
|
||||||
}
|
|
||||||
|
|
||||||
static{
|
|
||||||
// core:AttendeeRole
|
|
||||||
// If the person changes, update the attendee role in organization
|
|
||||||
// core:AttendeeRole applies to events, not organizations; updating accordingly - tlw72
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?event) \n " +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ "?c rdf:type core:AttendeeRole . \n"
|
|
||||||
+ "?c obo:BFO_0000054 ?d . \n"
|
|
||||||
+ "?d rdf:type event:Event .\n"
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the organization changes, update the attendee role of person
|
|
||||||
// core:AttendeeRole applies to events, not organizations; updating accordingly - tlw72
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
|
|
||||||
+ "?uri rdf:type event:Event . \n"
|
|
||||||
+ "?uri obo:BFO_0000055 ?c . \n"
|
|
||||||
+ "?c rdf:type core:AttendeeRole . \n"
|
|
||||||
+ "?c obo:RO_0000052 ?d . \n"
|
|
||||||
+ "?d rdf:type foaf:Person .\n"
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// core:ClinicalRole -- core:clinicalRoleOf
|
|
||||||
|
|
||||||
// If the person changes, update the clinical role in project
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?project) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ "?c rdf:type core:ClinicalRole . \n"
|
|
||||||
+ "?c obo:BFO_0000054 ?d .\n"
|
|
||||||
+ "?d rdf:type core:Project .\n"
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
|
|
||||||
// If the person changes, update the clinical role in service
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?service) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ "?c rdf:type core:ClinicalRole . \n"
|
|
||||||
+ "?c core:roleContributesTo ?d .\n"
|
|
||||||
+ "?d rdf:type obo:ERO_0000005 .\n"
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the project changes, update the clinical role of person
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type core:Project . \n"
|
|
||||||
+ "?uri obo:BFO_0000055 ?c . \n"
|
|
||||||
+ "?c rdf:type core:ClinicalRole . \n"
|
|
||||||
+ "?c obo:RO_0000052 ?d .\n "
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the service changes, update the clinical role of person
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type obo:ERO_0000005 . \n"
|
|
||||||
+ "?uri core:contributingRole ?c . \n"
|
|
||||||
+ "?c rdf:type core:ClinicalRole . \n"
|
|
||||||
+ "?c obo:RO_0000052 ?d .\n "
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the person changes, update the leader role in organization
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?organization) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ "?c rdf:type core:LeaderRole . \n"
|
|
||||||
+ "?c core:roleContributesTo ?d .\n"
|
|
||||||
+ "?d rdf:type foaf:Organization .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the organization changes, update the leader role of person
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Organization . \n"
|
|
||||||
+ "?uri core:contributingRole ?c . \n"
|
|
||||||
+ "?c rdf:type core:LeaderRole . \n"
|
|
||||||
+ "?c obo:RO_0000052 ?d .\n "
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// core:MemberRole -- core:memberRoleOf
|
|
||||||
|
|
||||||
// If the person changes, update the member role in organization
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?organization) \n" +
|
|
||||||
"WHERE \n{"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ "?c rdf:type core:MemberRole . \n"
|
|
||||||
+ "?c core:roleContributesTo ?d .\n"
|
|
||||||
+ "?d rdf:type foaf:Organization .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the organization changes, update the member role of person
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {"
|
|
||||||
+ "?uri rdf:type foaf:Organization . \n"
|
|
||||||
+ "?uri core:contributingRole ?c . \n"
|
|
||||||
+ "?c rdf:type core:MemberRole . \n"
|
|
||||||
+ "?c obo:RO_0000052 ?d .\n "
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// core:OrganizerRole -- core:organizerRoleOf
|
|
||||||
|
|
||||||
// If the person changes, update the organizer role in organization
|
|
||||||
// organizerRole appplies to events not organizations; updating accordingly - tlw72
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?event) \n" +
|
|
||||||
"WHERE {"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ "?c rdf:type core:OrganizerRole .\n"
|
|
||||||
+ "?c obo:BFO_0000054 ?d .\n"
|
|
||||||
+ "?d rdf:type event:Event .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the organization changes, update the organizer role of person
|
|
||||||
// organizerRole appplies to events not organizations; updating accordingly - tlw72
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type event:Event . \n"
|
|
||||||
+ "?uri obo:BFO_0000055 ?c . \n"
|
|
||||||
+ "?c rdf:type core:OrganizerRole . \n"
|
|
||||||
+ "?c obo:RO_0000052 ?d .\n "
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// core:OutreachProviderRole -- core:outreachProviderRoleOf
|
|
||||||
|
|
||||||
// If the person changes, update the outreach provider role in organization
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?organization) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ "?c rdf:type core:OutreachProviderRole .\n"
|
|
||||||
+ "?c core:roleContributesTo ?d .\n"
|
|
||||||
+ "?d rdf:type foaf:Organization .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the organization changes, update the outreach provider role of person
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Organization . \n"
|
|
||||||
+ "?uri core:contributingRole ?c . \n"
|
|
||||||
+ "?c rdf:type core:OutreachProviderRole . \n"
|
|
||||||
+ "?c obo:RO_0000052 ?d .\n "
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// core:PresenterRole -- core:presenterRoleOf
|
|
||||||
|
|
||||||
// If the person changes, update the presentation
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?presentation) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ " ?c rdf:type core:PresenterRole . \n"
|
|
||||||
+ " ?c obo:BFO_0000054 ?d .\n"
|
|
||||||
+ " ?d rdf:type core:Presentation . \n"
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the presentation changes, update the person
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type core:Presentation . \n"
|
|
||||||
+ "?uri obo:BFO_0000055 ?c . \n"
|
|
||||||
+ " ?c rdf:type core:PresenterRole . \n "
|
|
||||||
+ "?c obo:RO_0000052 ?d .\n "
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// core:ResearcherRole -- core:researcherRoleOf
|
|
||||||
|
|
||||||
// If the person changes, update the grant
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?grant) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ " ?c rdf:type core:ResearcherRole . \n "
|
|
||||||
+ " ?c core:relatedBy ?d .\n"
|
|
||||||
+ " ?d rdf:type core:Grant . \n"
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the grant changes, update the researcher
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type core:Grant . \n"
|
|
||||||
+ "?uri core:relates ?c . \n"
|
|
||||||
+ " ?c rdf:type core:ResearcherRole . \n "
|
|
||||||
+ " ?c obo:RO_0000052 ?d .\n"
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the grant changes, update the principal investigator
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type core:Grant . \n"
|
|
||||||
+ " ?uri core:relates ?c . \n"
|
|
||||||
+ " ?c rdf:type core:PrincipalInvestigatorRole . \n "
|
|
||||||
+ " ?c obo:RO_0000052 ?d .\n"
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the grant changes, update the co-principal investigator
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type core:Grant . \n"
|
|
||||||
+ " ?uri core:relates ?c . \n"
|
|
||||||
+ " ?c rdf:type core:CoPrincipalInvestigatorRole . \n "
|
|
||||||
+ " ?c obo:RO_0000052 ?d .\n"
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
|
|
||||||
// If the grant changes, update the investigator
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type core:Grant . \n"
|
|
||||||
+ " ?uri core:relates ?c . \n"
|
|
||||||
+ " ?c rdf:type core:InvestigatorRole . \n "
|
|
||||||
+ " ?c obo:RO_0000052 ?d .\n"
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the person changes, update the project
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?project) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ " ?c rdf:type core:ResearcherRole . \n "
|
|
||||||
+ " ?c obo:BFO_0000054 ?d .\n"
|
|
||||||
+ " ?d rdf:type core:Project . \n"
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the project changes, update the researcher
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type core:Project . \n"
|
|
||||||
+ " ?uri obo:BFO_0000055 ?c .\n"
|
|
||||||
+ " ?c rdf:type core:ResearcherRole . \n "
|
|
||||||
+ " ?c obo:RO_0000052 ?d .\n"
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// core:EditorRole -- core:editorRoleOf, core:forInformationResource (person, informationresource)
|
|
||||||
|
|
||||||
// If the person changes, update the editor role of the info resource
|
|
||||||
// changing foaf:Organization to info content entity. Org no longer applies here - tlw72
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?informationResource) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ " ?c rdf:type core:EditorRole . \n "
|
|
||||||
+ " ?c core:roleContributesTo ?d .\n"
|
|
||||||
+ "?d rdf:type obo:IAO_0000030 .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
|
|
||||||
// If the info respource changes, update the editor role of person
|
|
||||||
// changing foaf:Organization to info content entity. Org no longer applies here - tlw72
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type obo:IAO_0000030 . \n"
|
|
||||||
+ "?uri core:contributingRole ?c . \n"
|
|
||||||
+ " ?c rdf:type core:EditorRole . \n "
|
|
||||||
+ " ?c obo:RO_0000052 ?d .\n"
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// Next two queries are covered by the previous two. Commenting them out - tlw72
|
|
||||||
// If the person changes, update the information resource associated with editor role
|
|
||||||
/* multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?informationResource) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
|
|
||||||
+ "?uri rdf:type foaf:Person ; ?b ?c . \n"
|
|
||||||
+ " ?c rdf:type core:EditorRole ; core:forInformationResource ?d .\n"
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the organization changes, update the information resource associated with editor role
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?informationResource) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
|
|
||||||
+ "?uri rdf:type foaf:Organization ; ?b ?c . \n"
|
|
||||||
+ " ?c rdf:type core:EditorRole ; core:forInformationResource ?d .\n"
|
|
||||||
+ " }");
|
|
||||||
*/
|
|
||||||
// core:ServiceProviderRole -- core:serviceProviderRoleOf
|
|
||||||
|
|
||||||
// If the person changes, update the service provider role in organization
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?organization) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ " ?c rdf:type obo:ERO_0000012 . \n"
|
|
||||||
+ " ?c core:roleContributesTo ?d .\n"
|
|
||||||
+ " ?d rdf:type foaf:Organization .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the organization changes, update the service provider role of person
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Organization . \n"
|
|
||||||
+ "?uri core:contributingRole ?c . \n"
|
|
||||||
+ " ?c rdf:type obo:ERO_0000012 . \n "
|
|
||||||
+ " ?c obo:RO_0000052 ?d .\n"
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
|
|
||||||
// core:TeacherRole -- core:teacherRoleOf
|
|
||||||
|
|
||||||
// If the person changes, update the teacher role in organization
|
|
||||||
// updated to make this an Event (e.g., a course) not an organization - tlw72
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?event) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ " ?c rdf:type core:TeacherRole . \n"
|
|
||||||
+ " ?c obo:BFO_0000054 ?d .\n"
|
|
||||||
+ " ?d rdf:type event:Event .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the organization changes, update the teacher role of person
|
|
||||||
// updated to make this an Event (e.g., a course) not an organization - tlw72
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?person) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type event:Event . \n"
|
|
||||||
+ "?uri obo:BFO_0000055 ?c . \n"
|
|
||||||
+ " ?c rdf:type core:TeacherRole . \n "
|
|
||||||
+ " ?c obo:RO_0000052 ?d .\n"
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
|
|
||||||
// core:ReviewerRole -- core:forInformationResource, core:reviewerRoleOf
|
|
||||||
// core:PeerReviewerRole -- core:forInformationResource, core:reviewerRoleOf
|
|
||||||
|
|
||||||
// If the person changes, update the information resource associated with reviewer role
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?informationResource) \n " +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type foaf:Person . \n"
|
|
||||||
+ "?uri obo:RO_0000053 ?c . \n"
|
|
||||||
+ " ?c rdf:type core:ReviewerRole . \n"
|
|
||||||
+ " ?c core:roleContributesTo ?d .\n"
|
|
||||||
+ " ?d rdf:type obo:IAO_0000030 .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
// If the organization changes, update the information resource associated with reviewer role
|
|
||||||
multiValuedQueriesForRole.add(prefix +
|
|
||||||
"SELECT (str(?d) as ?informationResource) \n" +
|
|
||||||
"WHERE {\n"
|
|
||||||
+ "?uri rdf:type obo:IAO_0000030 . \n"
|
|
||||||
+ "?uri core:contributingRole ?c . \n"
|
|
||||||
+ " ?c rdf:type core:ReviewerRole. \n "
|
|
||||||
+ " ?c obo:RO_0000052 ?d .\n"
|
|
||||||
+ "?d rdf:type foaf:Person .\n "
|
|
||||||
+ " }");
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
static{
|
|
||||||
List<String> tmpList = new ArrayList<String>();
|
|
||||||
tmpList.add(multiValuedQueryForInformationContentEntity);
|
|
||||||
tmpList.addAll(multiValuedQueriesForAgent);
|
|
||||||
tmpList.addAll(multiValuedQueriesForRole);
|
|
||||||
tmpList.addAll( queriesForAuthorship());
|
|
||||||
tmpList.addAll(queriesForURLLink());
|
|
||||||
tmpList.addAll(queriesForEducationalTraining());
|
|
||||||
tmpList.addAll(queriesForPosition());
|
|
||||||
|
|
||||||
queryList = Collections.unmodifiableList(tmpList);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,30 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.indexing;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.IndividualDao;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFService;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.search.beans.StatementToURIsToUpdate;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Make a list of StatementToURIsToUpdate objects for use by the
|
|
||||||
* IndexBuidler.
|
|
||||||
*/
|
|
||||||
public class AdditionalUriFinders {
|
|
||||||
|
|
||||||
public static List<StatementToURIsToUpdate> getList(RDFService rdfService,
|
|
||||||
IndividualDao indDao) {
|
|
||||||
List<StatementToURIsToUpdate> uriFinders = new ArrayList<>();
|
|
||||||
uriFinders.add(new AdditionalURIsForDataProperties());
|
|
||||||
uriFinders.add(new AdditionalURIsForObjectProperties(rdfService));
|
|
||||||
uriFinders.add(new AdditionalURIsForContextNodes(rdfService));
|
|
||||||
uriFinders.add(new AdditionalURIsForTypeStatements());
|
|
||||||
uriFinders.add(new URIsForClassGroupChange(indDao));
|
|
||||||
uriFinders.add(new AdditionalUrisForVCards(rdfService));
|
|
||||||
return uriFinders;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,122 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.indexing;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.Iterator;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.apache.commons.logging.Log;
|
|
||||||
import org.apache.commons.logging.LogFactory;
|
|
||||||
|
|
||||||
import com.hp.hpl.jena.query.QuerySolution;
|
|
||||||
import com.hp.hpl.jena.query.QuerySolutionMap;
|
|
||||||
import com.hp.hpl.jena.query.ResultSet;
|
|
||||||
import com.hp.hpl.jena.rdf.model.RDFNode;
|
|
||||||
import com.hp.hpl.jena.rdf.model.Resource;
|
|
||||||
import com.hp.hpl.jena.rdf.model.ResourceFactory;
|
|
||||||
import com.hp.hpl.jena.rdf.model.Statement;
|
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.jena.QueryUtils;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFService;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.search.beans.StatementToURIsToUpdate;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If the property of a VCard object is changed, we should re-index the owner of
|
|
||||||
* that VCard.
|
|
||||||
*/
|
|
||||||
public class AdditionalUrisForVCards implements StatementToURIsToUpdate {
|
|
||||||
private static final Log log = LogFactory
|
|
||||||
.getLog(AdditionalUrisForVCards.class);
|
|
||||||
|
|
||||||
private final String QUERY_FOR_RELATED = "" //
|
|
||||||
+ "prefix vcard: <http://www.w3.org/2006/vcard/ns#> \n"
|
|
||||||
+ "prefix obo: <http://purl.obolibrary.org/obo/> \n"
|
|
||||||
+ "SELECT ?uri WHERE { \n"
|
|
||||||
+ " ?subject a vcard:Identification . \n "
|
|
||||||
+ " ?contactInfo ?p ?subject . \n "
|
|
||||||
+ " ?uri obo:ARG_2000028 ?contactInfo . \n " //
|
|
||||||
+ "}";
|
|
||||||
|
|
||||||
private final RDFService rdfService;
|
|
||||||
|
|
||||||
public AdditionalUrisForVCards(RDFService rdfService) {
|
|
||||||
this.rdfService = rdfService;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void startIndexing() {
|
|
||||||
// Nothing to set up.
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public List<String> findAdditionalURIsToIndex(Statement stmt) {
|
|
||||||
if (stmt == null) {
|
|
||||||
return Collections.emptyList();
|
|
||||||
}
|
|
||||||
|
|
||||||
RDFNode sNode = stmt.getSubject();
|
|
||||||
if (sNode == null) {
|
|
||||||
log.warn("subject of modified statement was null.");
|
|
||||||
return Collections.emptyList();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!sNode.isURIResource()) {
|
|
||||||
return Collections.emptyList();
|
|
||||||
}
|
|
||||||
|
|
||||||
Resource subject = sNode.asResource();
|
|
||||||
String uri = subject.getURI();
|
|
||||||
if (uri == null) {
|
|
||||||
log.warn("subject of modified statement had a null URI.");
|
|
||||||
return Collections.emptyList();
|
|
||||||
}
|
|
||||||
|
|
||||||
return ownersOfVCard(uri);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* If the subject of the statement is a vcard:Identification, then we also
|
|
||||||
* want to index the owner of the vcard:ContactInfo that references this
|
|
||||||
* vcard:Identification.
|
|
||||||
*
|
|
||||||
* vcard:Identification is a superclass of vcard:Name, vcard:Email,
|
|
||||||
* vcard:Telephone, vcard:Address, and vcard:URL.
|
|
||||||
*
|
|
||||||
* @see https://wiki.duraspace.org/display/VIVO/VCard+usage+diagram
|
|
||||||
*/
|
|
||||||
private List<String> ownersOfVCard(String subjectUri) {
|
|
||||||
List<String> additionalUris = new ArrayList<>();
|
|
||||||
|
|
||||||
QuerySolutionMap initialBinding = new QuerySolutionMap();
|
|
||||||
Resource subjectResource = ResourceFactory.createResource(subjectUri);
|
|
||||||
initialBinding.add("subject", subjectResource);
|
|
||||||
|
|
||||||
ResultSet results = QueryUtils.getQueryResults(QUERY_FOR_RELATED,
|
|
||||||
initialBinding, rdfService);
|
|
||||||
|
|
||||||
while (results.hasNext()) {
|
|
||||||
QuerySolution soln = results.nextSolution();
|
|
||||||
RDFNode node = soln.get("uri");
|
|
||||||
if (node != null) {
|
|
||||||
if (node.isURIResource()) {
|
|
||||||
additionalUris.add(node.asResource().getURI());
|
|
||||||
} else {
|
|
||||||
log.warn("value from query for 'uri'"
|
|
||||||
+ " was not a URIResource, it was " + node);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
log.warn("value for query for 'uri' was null");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return additionalUris;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void endIndxing() {
|
|
||||||
// Nothing to tear down.
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,6 +1,6 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.documentBuilding;
|
package edu.cornell.mannlib.vitro.webapp.searchindex.documentBuilding;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
|
@ -36,7 +36,7 @@ import edu.cornell.mannlib.vitro.webapp.utils.configuration.ContextModelsUser;
|
||||||
public class CalculateParameters implements DocumentModifier, ContextModelsUser {
|
public class CalculateParameters implements DocumentModifier, ContextModelsUser {
|
||||||
|
|
||||||
private boolean shutdown = false;
|
private boolean shutdown = false;
|
||||||
private Dataset dataset;
|
private volatile Dataset dataset;
|
||||||
// public static int totalInd=1;
|
// public static int totalInd=1;
|
||||||
|
|
||||||
private static final String prefix = "prefix owl: <http://www.w3.org/2002/07/owl#> "
|
private static final String prefix = "prefix owl: <http://www.w3.org/2002/07/owl#> "
|
||||||
|
@ -254,6 +254,13 @@ public class CalculateParameters implements DocumentModifier, ContextModelsUser
|
||||||
public void shutdown(){
|
public void shutdown(){
|
||||||
shutdown=true;
|
shutdown=true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return this.getClass().getSimpleName() + "[]";
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class TotalInd implements Runnable{
|
class TotalInd implements Runnable{
|
|
@ -0,0 +1,388 @@
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
package edu.cornell.mannlib.vitro.webapp.searchindex.extensions;
|
||||||
|
|
||||||
|
import static edu.cornell.mannlib.vitro.webapp.search.VitroSearchTermNames.ALLTEXT;
|
||||||
|
import static edu.cornell.mannlib.vitro.webapp.search.VitroSearchTermNames.ALLTEXTUNSTEMMED;
|
||||||
|
import static edu.cornell.mannlib.vitro.webapp.utils.sparql.SelectQueryRunner.createQueryContext;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
import org.apache.commons.logging.Log;
|
||||||
|
import org.apache.commons.logging.LogFactory;
|
||||||
|
|
||||||
|
import com.hp.hpl.jena.rdf.model.ResourceFactory;
|
||||||
|
import com.hp.hpl.jena.rdf.model.Statement;
|
||||||
|
import com.hp.hpl.jena.vocabulary.RDFS;
|
||||||
|
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.VClass;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.modelaccess.ContextModelAccess;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchInputDocument;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFService;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.searchindex.documentBuilding.DocumentModifier;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.searchindex.indexing.IndexingUriFinder;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.utils.configuration.ContextModelsUser;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.utils.configuration.Property;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.utils.configuration.Validation;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If an individual has context nodes then the search document for that
|
||||||
|
* individual should include the labels of the partners across those nodes. The
|
||||||
|
* labels will be added to the ALLTEXT and ALLTEXTUNSTEMMED fields.
|
||||||
|
*
|
||||||
|
* We can add restrictions to say that this only applies to individuals of
|
||||||
|
* certain types. We can also restrict the type of the applicable context nodes.
|
||||||
|
*
|
||||||
|
* An instance of this class acts as both a DocumentModifier and an
|
||||||
|
* IndexingUriFinder:
|
||||||
|
*
|
||||||
|
* As a DocumentModifier, it looks across approved context nodes to fetch the
|
||||||
|
* labels of the partners.
|
||||||
|
*
|
||||||
|
* As an IndexingUriFinder, it recognizes that this relationship can be changed
|
||||||
|
* by a change to a "label" statement, or to a "relates" property, and finds all
|
||||||
|
* partners as candidates for reindexing.
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
* Configuration:
|
||||||
|
* rdfs:label -- Optional. Appears in the timings and debug statements.
|
||||||
|
* :hasTypeRestriction -- Optional. Match any. If none, then no restriction.
|
||||||
|
* :appliesToContextNodeType -- Optional. Match any. If none, then no restriction.
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
public class LabelsAcrossContextNodes implements IndexingUriFinder,
|
||||||
|
DocumentModifier, ContextModelsUser {
|
||||||
|
private static final Log log = LogFactory
|
||||||
|
.getLog(LabelsAcrossContextNodes.class);
|
||||||
|
|
||||||
|
private RDFService rdfService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A name to be used in logging, to identify this instance. If not provided,
|
||||||
|
* then a descriptive label will be created.
|
||||||
|
*/
|
||||||
|
private String label;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* URIs of the types of individuals to whom this instance applies.
|
||||||
|
*
|
||||||
|
* If this is not empty and an individual does not have any of these types,
|
||||||
|
* then skip that individual.
|
||||||
|
*/
|
||||||
|
private Set<String> typeRestrictions = new HashSet<>();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* URIs of the types of acceptable context nodes.
|
||||||
|
*
|
||||||
|
* If this is not empty and a context node does not have any of these types,
|
||||||
|
* then skip that context node's label.
|
||||||
|
*/
|
||||||
|
private Set<String> contextNodeClasses = new HashSet<>();
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setContextModels(ContextModelAccess models) {
|
||||||
|
this.rdfService = models.getRDFService();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Property(uri = "http://www.w3.org/2000/01/rdf-schema#label")
|
||||||
|
public void setLabel(String l) {
|
||||||
|
label = l;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Property(uri = "http://vitro.mannlib.cornell.edu/ns/vitro/ApplicationSetup#hasTypeRestriction")
|
||||||
|
public void addTypeRestriction(String typeUri) {
|
||||||
|
typeRestrictions.add(typeUri);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Property(uri = "http://vitro.mannlib.cornell.edu/ns/vitro/ApplicationSetup#appliesToContextNodeType")
|
||||||
|
public void addContextNodeClass(String cnc) {
|
||||||
|
contextNodeClasses.add(cnc);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Validation
|
||||||
|
public void validate() {
|
||||||
|
if (label == null) {
|
||||||
|
label = String.format("%s[types=%s, contextNodeTypes=%s]", this
|
||||||
|
.getClass().getSimpleName(),
|
||||||
|
formatRestrictions(typeRestrictions),
|
||||||
|
formatRestrictions(contextNodeClasses));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private String formatRestrictions(Set<String> uris) {
|
||||||
|
if (uris.isEmpty()) {
|
||||||
|
return "ALL";
|
||||||
|
} else {
|
||||||
|
return localNames(uris).toString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private Set<String> localNames(Set<String> uris) {
|
||||||
|
Set<String> names = new HashSet<>();
|
||||||
|
for (String uri : uris) {
|
||||||
|
try {
|
||||||
|
names.add(ResourceFactory.createResource(uri).getLocalName());
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.warn("Failed to parse URI: " + uri, e);
|
||||||
|
names.add(uri);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return names;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return (label == null) ? super.toString() : label;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
// DocumentModifier
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
|
||||||
|
private static final String LABELS_WITHOUT_RESTRICTION = ""
|
||||||
|
+ "PREFIX vivo: <http://vivoweb.org/ontology/core#> \n"
|
||||||
|
+ "PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> \n"
|
||||||
|
+ "SELECT ?label \n" //
|
||||||
|
+ "WHERE { \n" //
|
||||||
|
+ " ?uri vivo:relatedBy ?contextNode . \n" //
|
||||||
|
+ " ?contextNode vivo:relates ?partner . \n" //
|
||||||
|
+ " ?partner rdfs:label ?label . \n" //
|
||||||
|
+ " FILTER( ?uri != ?partner ) \n" //
|
||||||
|
+ "} \n";
|
||||||
|
private static final String LABELS_FOR_SPECIFIC_CONTEXT_NODE_TYPE = ""
|
||||||
|
+ "PREFIX vivo: <http://vivoweb.org/ontology/core#> \n"
|
||||||
|
+ "PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> \n"
|
||||||
|
+ "SELECT ?label \n" //
|
||||||
|
+ "WHERE { \n" //
|
||||||
|
+ " ?uri vivo:relatedBy ?contextNode . \n" //
|
||||||
|
+ " ?contextNode a ?nodeType . \n" //
|
||||||
|
+ " ?contextNode vivo:relates ?partner . \n" //
|
||||||
|
+ " ?partner rdfs:label ?label . \n" //
|
||||||
|
+ " FILTER( ?uri != ?partner ) \n" //
|
||||||
|
+ "} \n";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If this individual is acceptable, locate the labels of any context
|
||||||
|
* partners across acceptable context nodes. Add those labels to the text
|
||||||
|
* fields of the search document.
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void modifyDocument(Individual ind, SearchInputDocument doc) {
|
||||||
|
if (passesTypeRestriction(ind)) {
|
||||||
|
if (contextNodeClasses.isEmpty()) {
|
||||||
|
addLabelsFromAllContextNodeClasses(ind, doc);
|
||||||
|
} else {
|
||||||
|
for (String contextNodeClass : contextNodeClasses) {
|
||||||
|
addLabelsFromContextNodeClass(ind, doc, contextNodeClass);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean passesTypeRestriction(Individual ind) {
|
||||||
|
if (typeRestrictions.isEmpty()) {
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
for (VClass type : ind.getVClasses()) {
|
||||||
|
if (typeRestrictions.contains(type.getURI())) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void addLabelsFromAllContextNodeClasses(Individual ind,
|
||||||
|
SearchInputDocument doc) {
|
||||||
|
addValuesToTextFields(doc,
|
||||||
|
createQueryContext(rdfService, LABELS_WITHOUT_RESTRICTION)
|
||||||
|
.bindVariableToUri("uri", ind.getURI()).execute()
|
||||||
|
.getStringFields("label").flatten());
|
||||||
|
}
|
||||||
|
|
||||||
|
private void addLabelsFromContextNodeClass(Individual ind,
|
||||||
|
SearchInputDocument doc, String contextNodeClass) {
|
||||||
|
addValuesToTextFields(
|
||||||
|
doc,
|
||||||
|
createQueryContext(rdfService,
|
||||||
|
LABELS_FOR_SPECIFIC_CONTEXT_NODE_TYPE)
|
||||||
|
.bindVariableToUri("uri", ind.getURI())
|
||||||
|
.bindVariableToUri("nodeType", contextNodeClass)
|
||||||
|
.execute().getStringFields("label").flatten());
|
||||||
|
}
|
||||||
|
|
||||||
|
private void addValuesToTextFields(SearchInputDocument doc,
|
||||||
|
List<String> values) {
|
||||||
|
for (String value : values) {
|
||||||
|
doc.addField(ALLTEXT, value);
|
||||||
|
doc.addField(ALLTEXTUNSTEMMED, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void shutdown() {
|
||||||
|
// Nothing to shut down.
|
||||||
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
// IndexingUriFinder
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
|
||||||
|
private static final String URI_VIVO_RELATES = "http://vivoweb.org/ontology/core#relates";
|
||||||
|
|
||||||
|
private static final String LOCATE_PARTNERS_WITHOUT_RESTRICTION = ""
|
||||||
|
+ "PREFIX vivo: <http://vivoweb.org/ontology/core#> \n"
|
||||||
|
+ "SELECT ?partner \n" //
|
||||||
|
+ "WHERE { \n" //
|
||||||
|
+ " ?uri vivo:relatedBy ?contextNode . \n" //
|
||||||
|
+ " ?contextNode vivo:relates ?partner . \n" //
|
||||||
|
+ " FILTER( ?uri != ?partner ) \n" //
|
||||||
|
+ "} \n";
|
||||||
|
private static final String LOCATE_PARTNERS_ON_CONTEXT_NODE_TYPE = ""
|
||||||
|
+ "PREFIX vivo: <http://vivoweb.org/ontology/core#> \n"
|
||||||
|
+ "SELECT ?partner \n" //
|
||||||
|
+ "WHERE { \n" //
|
||||||
|
+ " ?uri vivo:relatedBy ?contextNode . \n" //
|
||||||
|
+ " ?contextNode vivo:relates ?partner . \n" //
|
||||||
|
+ " ?contextNode a ?nodeType . \n" //
|
||||||
|
+ " FILTER( ?uri != ?partner ) \n" //
|
||||||
|
+ "} \n";
|
||||||
|
private static final String LOCATE_OTHER_PARTNERS_ON_THIS_NODE = ""
|
||||||
|
+ "PREFIX vivo: <http://vivoweb.org/ontology/core#> \n"
|
||||||
|
+ "SELECT ?partner \n" //
|
||||||
|
+ "WHERE { \n" //
|
||||||
|
+ " ?contextNode vivo:relates ?partner . \n" //
|
||||||
|
+ " FILTER( ?uri != ?partner ) \n" //
|
||||||
|
+ "} \n";
|
||||||
|
private static final String GET_TYPES = "" //
|
||||||
|
+ "SELECT ?type \n" //
|
||||||
|
+ "WHERE { \n" //
|
||||||
|
+ " ?uri a ?type . \n" //
|
||||||
|
+ "} \n";
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void startIndexing() {
|
||||||
|
// Nothing to do.
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If this is a "label" statement, check to see if the subject has any
|
||||||
|
* acceptable partners across acceptable context nodes.
|
||||||
|
*
|
||||||
|
* If this is a "relates" statement on an acceptable context node, check to
|
||||||
|
* see if there are any other acceptable partners on this node.
|
||||||
|
*
|
||||||
|
* We could also check for "relatedBy" statements, but they should happen in
|
||||||
|
* pairs with the "relates" statements.
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<String> findAdditionalURIsToIndex(Statement stmt) {
|
||||||
|
if (isLabelStatement(stmt)) {
|
||||||
|
return filterByType(locatePartners(stmt));
|
||||||
|
} else if (isRelatesStatementOnAcceptableContextNode(stmt)) {
|
||||||
|
return filterByType(locateOtherPartners(stmt));
|
||||||
|
}
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean isLabelStatement(Statement stmt) {
|
||||||
|
return RDFS.label.getURI().equals(stmt.getPredicate().getURI());
|
||||||
|
}
|
||||||
|
|
||||||
|
private Set<String> locatePartners(Statement stmt) {
|
||||||
|
String uri = stmt.getSubject().getURI();
|
||||||
|
if (contextNodeClasses.isEmpty()) {
|
||||||
|
return locatePartnersWithoutRestriction(uri);
|
||||||
|
} else {
|
||||||
|
Set<String> uris = new HashSet<>();
|
||||||
|
for (String contextNodeClass : contextNodeClasses) {
|
||||||
|
uris.addAll(locatePartnersAcrossContextNodeClass(uri,
|
||||||
|
contextNodeClass));
|
||||||
|
}
|
||||||
|
return uris;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private Set<String> locatePartnersWithoutRestriction(String uri) {
|
||||||
|
return createQueryContext(rdfService,
|
||||||
|
LOCATE_PARTNERS_WITHOUT_RESTRICTION)
|
||||||
|
.bindVariableToUri("uri", uri).execute()
|
||||||
|
.getStringFields("partner").flattenToSet();
|
||||||
|
}
|
||||||
|
|
||||||
|
private Collection<? extends String> locatePartnersAcrossContextNodeClass(
|
||||||
|
String uri, String contextNodeClass) {
|
||||||
|
return createQueryContext(rdfService,
|
||||||
|
LOCATE_PARTNERS_ON_CONTEXT_NODE_TYPE)
|
||||||
|
.bindVariableToUri("uri", uri)
|
||||||
|
.bindVariableToUri("nodeType", contextNodeClass).execute()
|
||||||
|
.getStringFields("partner").flattenToSet();
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean isRelatesStatementOnAcceptableContextNode(Statement stmt) {
|
||||||
|
String subjectUri = stmt.getSubject().getURI();
|
||||||
|
String predicateUri = stmt.getPredicate().getURI();
|
||||||
|
|
||||||
|
if (URI_VIVO_RELATES.equals(predicateUri)
|
||||||
|
&& (contextNodeClasses.isEmpty() || isAnyMatch(
|
||||||
|
contextNodeClasses, getTypes(subjectUri)))) {
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private boolean isAnyMatch(Set<String> set1, Set<String> set2) {
|
||||||
|
Set<String> matches = new HashSet<>(set1);
|
||||||
|
matches.retainAll(set2);
|
||||||
|
return !matches.isEmpty();
|
||||||
|
}
|
||||||
|
|
||||||
|
private Set<String> getTypes(String uri) {
|
||||||
|
return createQueryContext(rdfService, GET_TYPES)
|
||||||
|
.bindVariableToUri("uri", uri).execute()
|
||||||
|
.getStringFields("type").flattenToSet();
|
||||||
|
}
|
||||||
|
|
||||||
|
private Set<String> locateOtherPartners(Statement stmt) {
|
||||||
|
if (!stmt.getSubject().isURIResource()) {
|
||||||
|
return Collections.emptySet();
|
||||||
|
}
|
||||||
|
|
||||||
|
String nodeUri = stmt.getSubject().getURI();
|
||||||
|
String objectUri = (stmt.getObject().isURIResource()) ? stmt
|
||||||
|
.getObject().asResource().getURI() : "NO_MATCH";
|
||||||
|
|
||||||
|
return createQueryContext(rdfService,
|
||||||
|
LOCATE_OTHER_PARTNERS_ON_THIS_NODE)
|
||||||
|
.bindVariableToUri("contextNode", nodeUri)
|
||||||
|
.bindVariableToUri("uri", objectUri).execute()
|
||||||
|
.getStringFields("partner").flattenToSet();
|
||||||
|
}
|
||||||
|
|
||||||
|
private List<String> filterByType(Collection<String> uris) {
|
||||||
|
if (typeRestrictions.isEmpty()) {
|
||||||
|
return new ArrayList<>(uris);
|
||||||
|
} else {
|
||||||
|
List<String> filtered = new ArrayList<>();
|
||||||
|
for (String uri : uris) {
|
||||||
|
if (isAnyMatch(typeRestrictions, getTypes(uri))) {
|
||||||
|
filtered.add(uri);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return filtered;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void endIndexing() {
|
||||||
|
// Nothing to do.
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -37,6 +37,8 @@ public class IndividualTemplateModel extends BaseIndividualTemplateModel {
|
||||||
private static final String CREDENTIAL_CLASS = "http://vivoweb.org/ontology/core#Credential";
|
private static final String CREDENTIAL_CLASS = "http://vivoweb.org/ontology/core#Credential";
|
||||||
private static final String DTP_CLASS = "http://vivoweb.org/ontology/core#DateTimeValuePrecision";
|
private static final String DTP_CLASS = "http://vivoweb.org/ontology/core#DateTimeValuePrecision";
|
||||||
private static final String ORGANIZATION_CLASS = FOAF + "Organization";
|
private static final String ORGANIZATION_CLASS = FOAF + "Organization";
|
||||||
|
private static final String EVENT_CLASS = "http://purl.org/NET/c4dm/event.owl#Event";
|
||||||
|
private static final String INFO_CONTENT_ENTITY_CLASS = "http://purl.obolibrary.org/obo/IAO_0000030";
|
||||||
private static final String BASE_VISUALIZATION_URL =
|
private static final String BASE_VISUALIZATION_URL =
|
||||||
UrlBuilder.getUrl(Route.VISUALIZATION_SHORT.path());
|
UrlBuilder.getUrl(Route.VISUALIZATION_SHORT.path());
|
||||||
|
|
||||||
|
@ -79,6 +81,14 @@ public class IndividualTemplateModel extends BaseIndividualTemplateModel {
|
||||||
return isVClass(ORGANIZATION_CLASS);
|
return isVClass(ORGANIZATION_CLASS);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean event() {
|
||||||
|
return isVClass(EVENT_CLASS);
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean infoContentEntity() {
|
||||||
|
return isVClass(INFO_CONTENT_ENTITY_CLASS);
|
||||||
|
}
|
||||||
|
|
||||||
public String coAuthorVisUrl() {
|
public String coAuthorVisUrl() {
|
||||||
String url = BASE_VISUALIZATION_URL + "/" + VisualizationFrameworkConstants.COAUTHORSHIP_VIS_SHORT_URL + "/";
|
String url = BASE_VISUALIZATION_URL + "/" + VisualizationFrameworkConstants.COAUTHORSHIP_VIS_SHORT_URL + "/";
|
||||||
return getVisUrl(url);
|
return getVisUrl(url);
|
||||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1,97 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.documentBuilding;
|
|
||||||
|
|
||||||
import static org.junit.Assert.assertNotNull;
|
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
|
|
||||||
import java.io.InputStream;
|
|
||||||
|
|
||||||
import org.junit.BeforeClass;
|
|
||||||
import org.junit.Test;
|
|
||||||
|
|
||||||
import stubs.edu.cornell.mannlib.vitro.webapp.modelaccess.ContextModelAccessStub;
|
|
||||||
|
|
||||||
import com.hp.hpl.jena.rdf.model.Model;
|
|
||||||
import com.hp.hpl.jena.rdf.model.ModelFactory;
|
|
||||||
import com.hp.hpl.jena.rdf.model.Property;
|
|
||||||
import com.hp.hpl.jena.rdf.model.RDFNode;
|
|
||||||
import com.hp.hpl.jena.rdf.model.ResourceFactory;
|
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.testing.AbstractTestClass;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.IndividualImpl;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.modelaccess.ModelAccess.WhichService;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.jena.model.RDFServiceModel;
|
|
||||||
|
|
||||||
|
|
||||||
public class VivoAgentContextNodeFieldsTest extends AbstractTestClass{
|
|
||||||
|
|
||||||
static String SPCA = "http://vivo.mydomain.edu/individual/n8087";
|
|
||||||
static ContextModelAccessStub contextModels;
|
|
||||||
|
|
||||||
@BeforeClass
|
|
||||||
public static void setup(){
|
|
||||||
Model m = ModelFactory.createDefaultModel();
|
|
||||||
InputStream stream = VivoAgentContextNodeFieldsTest
|
|
||||||
.class.getResourceAsStream("./NIHVIVO3853_DataSet1.rdf");
|
|
||||||
|
|
||||||
long preloadSize = m.size();
|
|
||||||
|
|
||||||
m.read(stream, null);
|
|
||||||
assertTrue("expected to load statements from file", m.size() > preloadSize );
|
|
||||||
|
|
||||||
assertTrue("expect statements about SPCA",
|
|
||||||
m.contains(ResourceFactory.createResource(SPCA),(Property) null,(RDFNode) null));
|
|
||||||
|
|
||||||
contextModels = new ContextModelAccessStub();
|
|
||||||
contextModels.setRDFService(WhichService.CONTENT, new RDFServiceModel(m));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testJane(){
|
|
||||||
Individual ind = new IndividualImpl();
|
|
||||||
ind.setURI(SPCA);
|
|
||||||
|
|
||||||
VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields();
|
|
||||||
vacnf.setContextModels(contextModels);
|
|
||||||
StringBuffer sb = vacnf.getValues( ind );
|
|
||||||
|
|
||||||
assertNotNull( sb );
|
|
||||||
String values = sb.toString();
|
|
||||||
|
|
||||||
boolean hasJane = values.toLowerCase().indexOf("jane") > 0;
|
|
||||||
assertTrue("expected to have jane because SPCA advises jane", hasJane);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testWonder(){
|
|
||||||
Individual ind = new IndividualImpl();
|
|
||||||
ind.setURI(SPCA);
|
|
||||||
|
|
||||||
VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields();
|
|
||||||
vacnf.setContextModels(contextModels);
|
|
||||||
StringBuffer sb = vacnf.getValues( ind );
|
|
||||||
|
|
||||||
assertNotNull( sb );
|
|
||||||
String values = sb.toString();
|
|
||||||
|
|
||||||
boolean hasWonder = values.toLowerCase().indexOf("wonders") > 0;
|
|
||||||
assertTrue("expected to have jane because SPCA won wonders award", hasWonder);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testChimp(){
|
|
||||||
Individual ind = new IndividualImpl();
|
|
||||||
ind.setURI(SPCA);
|
|
||||||
|
|
||||||
VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields();
|
|
||||||
vacnf.setContextModels(contextModels);
|
|
||||||
StringBuffer sb = vacnf.getValues( ind );
|
|
||||||
|
|
||||||
assertNotNull( sb );
|
|
||||||
String values = sb.toString();
|
|
||||||
|
|
||||||
boolean hasNotChimp = ! (values.toLowerCase().indexOf("chimp") > 0);
|
|
||||||
assertTrue("expected to not have chimp because jane won chimp award, not SPCA", hasNotChimp);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,82 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.documentBuilding;
|
|
||||||
|
|
||||||
import static org.junit.Assert.assertNotNull;
|
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
|
|
||||||
import java.io.InputStream;
|
|
||||||
|
|
||||||
import org.apache.commons.lang.StringUtils;
|
|
||||||
import org.junit.BeforeClass;
|
|
||||||
import org.junit.Test;
|
|
||||||
|
|
||||||
import stubs.edu.cornell.mannlib.vitro.webapp.modelaccess.ContextModelAccessStub;
|
|
||||||
|
|
||||||
import com.hp.hpl.jena.rdf.model.Model;
|
|
||||||
import com.hp.hpl.jena.rdf.model.ModelFactory;
|
|
||||||
import com.hp.hpl.jena.rdf.model.Property;
|
|
||||||
import com.hp.hpl.jena.rdf.model.RDFNode;
|
|
||||||
import com.hp.hpl.jena.rdf.model.ResourceFactory;
|
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.testing.AbstractTestClass;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.IndividualImpl;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.modelaccess.ModelAccess.WhichService;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.jena.model.RDFServiceModel;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Second test for VivoAgentContextNodeFields. This is duplicated
|
|
||||||
* due to using a different data set in the test.
|
|
||||||
*
|
|
||||||
*/
|
|
||||||
public class VivoAgentContextNodeFieldsTest2 extends AbstractTestClass{
|
|
||||||
|
|
||||||
static String HISTORY_DEPT = "http://vivo.colorado.edu/deptid_10238" ;
|
|
||||||
static ContextModelAccessStub contextModels;
|
|
||||||
|
|
||||||
@BeforeClass
|
|
||||||
public static void setup(){
|
|
||||||
Model m = ModelFactory.createDefaultModel();
|
|
||||||
InputStream stream = VivoAgentContextNodeFieldsTest2
|
|
||||||
.class.getResourceAsStream("./VIVO146_DataSet1.n3");
|
|
||||||
assertTrue("Expected to find RDF data file " , stream != null );
|
|
||||||
|
|
||||||
long preloadSize = m.size();
|
|
||||||
|
|
||||||
m.read(stream, null, "N3");
|
|
||||||
assertTrue("expected to load statements from file", m.size() > preloadSize );
|
|
||||||
|
|
||||||
System.out.println("size of m : " + m.size());
|
|
||||||
|
|
||||||
assertTrue("expect statements about HISTORY_DEPT",
|
|
||||||
m.contains(ResourceFactory.createResource(HISTORY_DEPT),(Property) null,(RDFNode) null));
|
|
||||||
|
|
||||||
contextModels = new ContextModelAccessStub();
|
|
||||||
contextModels.setRDFService(WhichService.CONTENT, new RDFServiceModel(m));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Test how many times history is returned for context nodes
|
|
||||||
* of the History department.
|
|
||||||
*/
|
|
||||||
@Test
|
|
||||||
public void testHistory(){
|
|
||||||
Individual ind = new IndividualImpl();
|
|
||||||
ind.setURI(HISTORY_DEPT);
|
|
||||||
|
|
||||||
VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields();
|
|
||||||
vacnf.setContextModels(contextModels);
|
|
||||||
StringBuffer sb = vacnf.getValues( ind );
|
|
||||||
|
|
||||||
assertNotNull( sb );
|
|
||||||
String value = sb.toString();
|
|
||||||
|
|
||||||
assertTrue("Expected to get some text back from "
|
|
||||||
+ "VivoAgentContextNodeFields but got none" , !value.trim().isEmpty());
|
|
||||||
|
|
||||||
int count = StringUtils.countMatches(value.toLowerCase(),"history");
|
|
||||||
System.out.println("histories: " + count);
|
|
||||||
System.out.println("'" + value + "'");
|
|
||||||
// assertTrue("expected to have jane because SPCA advises jane", hasJane);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,79 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.documentBuilding;
|
|
||||||
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.io.InputStream;
|
|
||||||
import java.util.Collection;
|
|
||||||
|
|
||||||
import org.junit.Assert;
|
|
||||||
import org.junit.Test;
|
|
||||||
|
|
||||||
import stubs.edu.cornell.mannlib.vitro.webapp.modelaccess.ContextModelAccessStub;
|
|
||||||
import stubs.edu.cornell.mannlib.vitro.webapp.modules.ApplicationStub;
|
|
||||||
import stubs.edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchEngineStub;
|
|
||||||
import stubs.javax.servlet.ServletContextStub;
|
|
||||||
|
|
||||||
import com.hp.hpl.jena.ontology.OntModel;
|
|
||||||
import com.hp.hpl.jena.ontology.OntModelSpec;
|
|
||||||
import com.hp.hpl.jena.rdf.model.Model;
|
|
||||||
import com.hp.hpl.jena.rdf.model.ModelFactory;
|
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.testing.AbstractTestClass;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.application.ApplicationUtils;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.WebappDaoFactory;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.dao.jena.WebappDaoFactoryJena;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.modelaccess.ModelAccess.WhichService;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchInputDocument;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.jena.model.RDFServiceModel;
|
|
||||||
|
|
||||||
public class VivoInformationResourceContextNodeFieldsTest extends AbstractTestClass {
|
|
||||||
|
|
||||||
String TEST_NO_LABLE_N3_FILE = "VivoInformationResourceContextNodeFieldsTest.n3";
|
|
||||||
String RDFS_LABEL_VALUE = "Test Document X";
|
|
||||||
String DOCUMENT_URI = "http://example.com/vivo/individual/n7474";
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testNoLabel() throws IOException{
|
|
||||||
ApplicationStub.setup(new ServletContextStub(), new SearchEngineStub());
|
|
||||||
|
|
||||||
//Test that rdfs:label is NOT added by the VivoInformationResourceContextNodeFields
|
|
||||||
|
|
||||||
//setup a model & wdf with test RDF file
|
|
||||||
InputStream stream = VivoInformationResourceContextNodeFieldsTest.class.getResourceAsStream(TEST_NO_LABLE_N3_FILE);
|
|
||||||
Model model = ModelFactory.createDefaultModel();
|
|
||||||
model.read(stream, null, "N3");
|
|
||||||
stream.close();
|
|
||||||
|
|
||||||
OntModel ontModel = ModelFactory.createOntologyModel(OntModelSpec.OWL_DL_MEM,model);
|
|
||||||
ontModel.prepare();
|
|
||||||
Assert.assertTrue("ontModel had no statements" , ontModel.size() > 0 );
|
|
||||||
|
|
||||||
WebappDaoFactory wadf = new WebappDaoFactoryJena(ontModel);
|
|
||||||
Individual ind = wadf.getIndividualDao().getIndividualByURI(DOCUMENT_URI);
|
|
||||||
Assert.assertNotNull(ind);
|
|
||||||
|
|
||||||
ContextModelAccessStub contextModels = new ContextModelAccessStub();
|
|
||||||
contextModels.setRDFService(WhichService.CONTENT, new RDFServiceModel(ontModel));
|
|
||||||
|
|
||||||
SearchInputDocument doc = ApplicationUtils.instance().getSearchEngine().createInputDocument();
|
|
||||||
doc.addField("ALLTEXT", "");
|
|
||||||
|
|
||||||
VivoInformationResourceContextNodeFields vircnf = new VivoInformationResourceContextNodeFields();
|
|
||||||
vircnf.setContextModels(contextModels);
|
|
||||||
vircnf.modifyDocument(ind, doc);
|
|
||||||
|
|
||||||
Collection<Object> values = doc.getField("ALLTEXT").getValues();
|
|
||||||
for( Object value : values){
|
|
||||||
Assert.assertFalse("rdf:label erroneously added by document modifier:", value.toString().contains(RDFS_LABEL_VALUE));
|
|
||||||
}
|
|
||||||
|
|
||||||
VivoAgentContextNodeFields vacnf = new VivoAgentContextNodeFields();
|
|
||||||
vacnf.setContextModels(contextModels);
|
|
||||||
vacnf.modifyDocument(ind, doc);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,19 +0,0 @@
|
||||||
@prefix dc: <http://purl.org/dc/elements/1.1/> .
|
|
||||||
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
|
||||||
@prefix vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> .
|
|
||||||
@prefix owl: <http://www.w3.org/2002/07/owl#> .
|
|
||||||
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
|
||||||
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
|
||||||
|
|
||||||
<http://example.com/vivo/individual/n7474>
|
|
||||||
a <http://purl.org/ontology/bibo/Document> , owl:Thing , <http://purl.org/ontology/bibo/AudioDocument> , <http://vivoweb.org/ontology/core#InformationResource> ;
|
|
||||||
rdfs:label "Test Document X"@en-US ;
|
|
||||||
<http://purl.org/dc/terms/creator>
|
|
||||||
<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n4782> ;
|
|
||||||
<http://purl.org/dc/terms/title>
|
|
||||||
"Test Document X"@en-US ;
|
|
||||||
vitro:modTime "2011-11-01T11:11:49"^^xsd:dateTime ;
|
|
||||||
vitro:mostSpecificType
|
|
||||||
<http://purl.org/ontology/bibo/AudioDocument> ;
|
|
||||||
<http://vivoweb.org/ontology/core#informationResourceInAuthorship>
|
|
||||||
<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n7484> .
|
|
|
@ -1,604 +0,0 @@
|
||||||
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
|
||||||
|
|
||||||
package edu.cornell.mannlib.vitro.webapp.search.indexing;
|
|
||||||
|
|
||||||
import static org.junit.Assert.assertTrue;
|
|
||||||
|
|
||||||
import java.io.StringReader;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import org.junit.Test;
|
|
||||||
|
|
||||||
import com.hp.hpl.jena.ontology.OntModel;
|
|
||||||
import com.hp.hpl.jena.rdf.model.ModelFactory;
|
|
||||||
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.jena.model.RDFServiceModel;
|
|
||||||
|
|
||||||
|
|
||||||
public class AdditionalURIsForContextNodesTest {
|
|
||||||
|
|
||||||
private AdditionalURIsForContextNodes uriFinder;
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testPositionChanges(){
|
|
||||||
String n3 =
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5423> <http://vivoweb.org/ontology/core#relatedBy> <http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5431> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5423> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#AcademicDepartment> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5423> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Department> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5423> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5423> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5423> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Organization> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5423> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#AcademicDepartment> . \n" +
|
|
||||||
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5431> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#DependentResource> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5431> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#DependentResource> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5431> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Position> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5431> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5431> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#FacultyPosition> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5431> <http://vivoweb.org/ontology/core#relates> <http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5423> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5431> <http://vivoweb.org/ontology/core#relates> <http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n932> . \n" +
|
|
||||||
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n932> <http://vivoweb.org/ontology/core#relatedBy> <http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5431> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n932> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#FacultyMember> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n932> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n932> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n932> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n932> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#FacultyMember> . \n" +
|
|
||||||
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5398> <http://vivoweb.org/ontology/core#start> <http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5425> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5398> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#DateTimeInterval> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5398> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5398> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#DateTimeInterval> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5425> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5425> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#DateTimeValue> . \n" +
|
|
||||||
|
|
||||||
"<http://vivoweb.org/ontology/core#AcademicDepartment> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Class> . \n" +
|
|
||||||
"<http://vivoweb.org/ontology/core#Position> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Class> . \n" +
|
|
||||||
"<http://vivoweb.org/ontology/core#FacultyMember> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Class> . \n" +
|
|
||||||
"<http://xmlns.com/foaf/0.1/Organization> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Class> . \n" +
|
|
||||||
"<http://xmlns.com/foaf/0.1/Person> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Class> . \n" +
|
|
||||||
"<http://xmlns.com/foaf/0.1/Agent> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Class> . \n" +
|
|
||||||
"<http://vivoweb.org/ontology/core#DateTimeInterval> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Class> . \n" +
|
|
||||||
"<http://vivoweb.org/ontology/core#Department> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Class> . \n" ;
|
|
||||||
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//if the person changes then the org needs to be updated
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n932");
|
|
||||||
assertTrue("did not find org for context node", uris.contains("http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5423" ));
|
|
||||||
|
|
||||||
//if the org changes then the person needs to be updated
|
|
||||||
uris = uriFinder.findAdditionalURIsToIndex( "http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n5423");
|
|
||||||
assertTrue("did not find person for context node", uris.contains("http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n932" ));
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testPersonOnOrgChange() {
|
|
||||||
|
|
||||||
String n3 ="@prefix dc: <http://purl.org/dc/elements/1.1/> . \n" +
|
|
||||||
"@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . \n" +
|
|
||||||
"@prefix swrl: <http://www.w3.org/2003/11/swrl#> . \n" +
|
|
||||||
"@prefix vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#> . \n" +
|
|
||||||
"@prefix xsd: <http://www.w3.org/2001/XMLSchema#> . \n" +
|
|
||||||
"@prefix swrlb: <http://www.w3.org/2003/11/swrlb#> . \n" +
|
|
||||||
"@prefix owl: <http://www.w3.org/2002/07/owl#> . \n" +
|
|
||||||
"@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . \n" +
|
|
||||||
"@prefix core: <http://vivoweb.org/ontology/core#> . \n" +
|
|
||||||
"@prefix vivo: <http://vivo.library.cornell.edu/ns/0.1#> . \n" +
|
|
||||||
"@prefix obo: <http://purl.obolibrary.org/obo/> . \n" +
|
|
||||||
" " +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n2577> \n" +
|
|
||||||
" a owl:Thing , core:Role , core:LeaderRole ; \n" +
|
|
||||||
" rdfs:label \"head\"^^xsd:string ; \n" +
|
|
||||||
" vitro:mostSpecificType \n" +
|
|
||||||
" core:LeaderRole ; \n" +
|
|
||||||
" core:dateTimeInterval \n" +
|
|
||||||
" <http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n2594> ; \n" +
|
|
||||||
" obo:RO_0000052 <http://vivo.scripps.edu/individual/n14979> ; \n" +
|
|
||||||
" core:roleContributesTo <http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n2592> . \n" +
|
|
||||||
"<http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n2592> \n" +
|
|
||||||
" a <http://xmlns.com/foaf/0.1/Organization> , owl:Thing , <http://xmlns.com/foaf/0.1/Agent> , core:ClinicalOrganization ; \n" +
|
|
||||||
" rdfs:label \"Organization XYZ\"^^xsd:string ; \n" +
|
|
||||||
" vitro:mostSpecificType \n" +
|
|
||||||
" core:ClinicalOrganization ; \n" +
|
|
||||||
" core:contributingRole <http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n2577> . \n" +
|
|
||||||
" <http://vivo.scripps.edu/individual/n14979> a <http://xmlns.com/foaf/0.1/Person> , owl:Thing , <http://xmlns.com/foaf/0.1/Agent> . \n";
|
|
||||||
|
|
||||||
//make a test model with an person, an authorship context node and a book
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//get additional uris for org
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://caruso-laptop.mannlib.cornell.edu:8090/vivo/individual/n2592");
|
|
||||||
|
|
||||||
assertTrue("did not find person for context node", uris.contains("http://vivo.scripps.edu/individual/n14979" ));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testLeaderRoleChanges(){
|
|
||||||
String n3=
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n2027> <http://www.w3.org/2000/01/rdf-schema#label> \"1, Test\" . \n " +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n2027> <http://xmlns.com/foaf/0.1/lastName> \"1\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n2027> <http://xmlns.com/foaf/0.1/firstName> \"Test\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2027> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://xmlns.com/foaf/0.1/Person> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2027> <http://purl.obolibrary.org/obo/RO_0000053> <http://vivo.scripps.edu/individual/n7067> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2027> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2027> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2027> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n " +
|
|
||||||
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n7067> <http://www.w3.org/2000/01/rdf-schema#label> \"Leader Role\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n7067> <http://purl.obolibrary.org/obo/RO_0000052> <http://vivo.scripps.edu/individual/n2027> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n7067> <http://vivoweb.org/ontology/core#dateTimeInterval> <http://vivo.scripps.edu/individual/n7083> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n7067> <http://vivoweb.org/ontology/core#roleContributesTo> <http://vivo.scripps.edu/individual/n7080> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n7067> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#LeaderRole> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n7067> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#LeaderRole> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n7067> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n " +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n7080> <http://www.w3.org/2000/01/rdf-schema#label> \"University1\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n7080> <http://vivoweb.org/ontology/core#contributingRole> <http://vivo.scripps.edu/individual/n7067> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n7080> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#University> .\n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n7080> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#University> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n7080> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n7080> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n7080> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Organization> . \n " ;
|
|
||||||
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//if the person changes then the university needs to be updated
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n2027");
|
|
||||||
assertTrue("did not find org for context node", uris.contains("http://vivo.scripps.edu/individual/n7080" ));
|
|
||||||
|
|
||||||
//if the university changes then the person needs to be updated
|
|
||||||
uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n7080");
|
|
||||||
assertTrue("did not find person for context node", uris.contains("http://vivo.scripps.edu/individual/n2027" ));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testMemberRoleChanges(){
|
|
||||||
String n3 =
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n4519> <http://purl.obolibrary.org/obo/RO_0000053> <http://vivo.scripps.edu/individual/n6040> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4519> <http://www.w3.org/2000/01/rdf-schema#label> \"2, Test\" . \n " +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n4519> <http://xmlns.com/foaf/0.1/lastName> \"2\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n4519> <http://xmlns.com/foaf/0.1/firstName> \"Test\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4519> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://xmlns.com/foaf/0.1/Person> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4519> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4519> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4519> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n " +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n6040> <http://www.w3.org/2000/01/rdf-schema#label> \"Member Role\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6040> <http://vivoweb.org/ontology/core#dateTimeInterval> <http://vivo.scripps.edu/individual/n6031> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6040> <http://vivoweb.org/ontology/core#roleContributesTo> <http://vivo.scripps.edu/individual/n6004> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6040> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#MemberRole> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6040> <http://purl.obolibrary.org/obo/RO_0000052> <http://vivo.scripps.edu/individual/n4519> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6040> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#MemberRole> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6040> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Role> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6040> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n " +
|
|
||||||
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n6004> <http://www.w3.org/2000/01/rdf-schema#label> \"University2\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6004> <http://vivoweb.org/ontology/core#contributingRole> <http://vivo.scripps.edu/individual/n6040> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6004> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#University> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6004> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#University> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6004> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6004> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n6004> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Organization> . \n " ;
|
|
||||||
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//if the person changes then the university needs to be updated
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n4519");
|
|
||||||
assertTrue("did not find org for context node", uris.contains("http://vivo.scripps.edu/individual/n6004" ));
|
|
||||||
|
|
||||||
//if the university changes then the person needs to be updated
|
|
||||||
uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n6004");
|
|
||||||
assertTrue("did not find person for context node", uris.contains("http://vivo.scripps.edu/individual/n4519" ));
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testClinicalRoleChangesForProject(){
|
|
||||||
|
|
||||||
String n3 =
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n4858> <http://www.w3.org/2000/01/rdf-schema#label> \"3, Test\" . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n4858> <http://xmlns.com/foaf/0.1/lastName> \"3\"^^<http://www.w3.org/2001/XMLSchema#string> .\n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n4858> <http://xmlns.com/foaf/0.1/firstName> \"Test\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4858> <http://purl.obolibrary.org/obo/RO_0000053> <http://vivo.scripps.edu/individual/n5185> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4858> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4858> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4858> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4858> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n5185> <http://purl.obolibrary.org/obo/RO_0000052> <http://vivo.scripps.edu/individual/n4858> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5185> <http://www.w3.org/2000/01/rdf-schema#label> \"Clinical Role\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5185> <http://vivoweb.org/ontology/core#dateTimeInterval> <http://vivo.scripps.edu/individual/n5180> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5185> <http://purl.obolibrary.org/obo/BFO_0000054> <http://vivo.scripps.edu/individual/n5177> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5185> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#ClinicalRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5185> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Role> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5185> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5185> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#ClinicalRole> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n5177> <http://www.w3.org/2000/01/rdf-schema#label> \"Project1\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5177> <http://purl.obolibrary.org/obo/BFO_0000055> <http://vivo.scripps.edu/individual/n5185> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5177> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#Project> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5177> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Project> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5177> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5177> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Process> . \n" ;
|
|
||||||
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//if the person changes then the project needs to be updated
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n4858");
|
|
||||||
assertTrue("did not find project for clinical role", uris.contains("http://vivo.scripps.edu/individual/n5177" ));
|
|
||||||
|
|
||||||
//if the project changes then the person needs to be updated
|
|
||||||
uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n5177");
|
|
||||||
assertTrue("did not find person for clinical role", uris.contains("http://vivo.scripps.edu/individual/n4858" ));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testClinicalRoleChangesForService(){
|
|
||||||
|
|
||||||
String n3 =
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n5651> <http://www.w3.org/2000/01/rdf-schema#label> \"4, Test\" . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n5651> <http://xmlns.com/foaf/0.1/lastName> \"4\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n5651> <http://xmlns.com/foaf/0.1/firstName> \"Test\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5651> <http://purl.obolibrary.org/obo/RO_0000053> <http://vivo.scripps.edu/individual/n4428> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5651> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5651> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5651> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5651> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n4428> <http://purl.obolibrary.org/obo/RO_0000052> <http://vivo.scripps.edu/individual/n5651> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4428> <http://www.w3.org/2000/01/rdf-schema#label> \"Clinical Role 2\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4428> <http://vivoweb.org/ontology/core#dateTimeInterval> <http://vivo.scripps.edu/individual/n4444> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4428> <http://vivoweb.org/ontology/core#roleContributesTo> <http://vivo.scripps.edu/individual/n4442> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4428> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#ClinicalRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4428> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Role> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4428> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4428> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#ClinicalRole> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n4442> <http://www.w3.org/2000/01/rdf-schema#label> \"Service1\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4442> <http://vivoweb.org/ontology/core#contributingRole> <http://vivo.scripps.edu/individual/n4428> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4442> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://purl.obolibrary.org/obo/ERO_0000005> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4442> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4442> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://purl.obolibrary.org/obo/ERO_0000005> . \n" ;
|
|
||||||
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//if the person changes then the service needs to be updated
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n5651");
|
|
||||||
assertTrue("did not find service for clinical role", uris.contains("http://vivo.scripps.edu/individual/n4442" ));
|
|
||||||
|
|
||||||
//if the service changes then the person needs to be updated
|
|
||||||
uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n4442");
|
|
||||||
assertTrue("did not find person for clinical role", uris.contains("http://vivo.scripps.edu/individual/n5651" ));
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testPresenterRoleChangesForPresentation(){
|
|
||||||
String n3 =
|
|
||||||
"<http://vivo.scripps.edu/individual/n5596> <http://purl.obolibrary.org/obo/RO_0000053> <http://vivo.scripps.edu/individual/n1294> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5596> <http://www.w3.org/2000/01/rdf-schema#label> \"5, Test\" . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n5596> <http://xmlns.com/foaf/0.1/lastName> \"5\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n5596> <http://xmlns.com/foaf/0.1/firstName> \"Test\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5596> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5596> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5596> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5596> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n1294> <http://purl.obolibrary.org/obo/RO_0000052> <http://vivo.scripps.edu/individual/n5596> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1294> <http://www.w3.org/2000/01/rdf-schema#label> \"Presenter Role\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1294> <http://vivoweb.org/ontology/core#dateTimeInterval> <http://vivo.scripps.edu/individual/n1304> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1294> <http://purl.obolibrary.org/obo/BFO_0000054> <http://vivo.scripps.edu/individual/n1305> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1294> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#PresenterRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1294> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Role> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1294> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#PresenterRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1294> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n1305> <http://www.w3.org/2000/01/rdf-schema#label> \"Presentation 1\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1305> <http://purl.obolibrary.org/obo/BFO_0000055> <http://vivo.scripps.edu/individual/n1294> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1305> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#Presentation> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1305> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Presentation> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1305> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://purl.org/NET/c4dm/event.owl#Event> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1305> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" ;
|
|
||||||
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//if the person changes then the presentation needs to be updated
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n5596");
|
|
||||||
assertTrue("did not find service for clinical role", uris.contains("http://vivo.scripps.edu/individual/n1305" ));
|
|
||||||
|
|
||||||
//if the presentation changes then the person needs to be updated
|
|
||||||
uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n1305");
|
|
||||||
assertTrue("did not find person for clinical role", uris.contains("http://vivo.scripps.edu/individual/n5596" ));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testPresenterRoleChangesForInvitedTalk(){
|
|
||||||
String n3 =
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n4112> <http://purl.obolibrary.org/obo/RO_0000053> <http://vivo.scripps.edu/individual/n4144> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4112> <http://www.w3.org/2000/01/rdf-schema#label> \"6, Test\" . \n " +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n4112> <http://xmlns.com/foaf/0.1/lastName> \"6\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n4112> <http://xmlns.com/foaf/0.1/firstName> \"Test\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4112> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://xmlns.com/foaf/0.1/Person> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4112> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4112> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4112> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n " +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n4144> <http://purl.obolibrary.org/obo/RO_0000052> <http://vivo.scripps.edu/individual/n4112> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4144> <http://www.w3.org/2000/01/rdf-schema#label> \"Presenter Role 2\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4144> <http://vivoweb.org/ontology/core#dateTimeInterval> <http://vivo.scripps.edu/individual/n4136> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4144> <http://purl.obolibrary.org/obo/BFO_0000054> <http://vivo.scripps.edu/individual/n4107> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4144> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#PresenterRole> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4144> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Role> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4144> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#PresenterRole> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4144> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n " +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n4107> <http://www.w3.org/2000/01/rdf-schema#label> \"Invited Talk 1\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4107> <http://purl.obolibrary.org/obo/BFO_0000055> <http://vivo.scripps.edu/individual/n4144> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4107> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#InvitedTalk> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4107> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Presentation> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4107> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://purl.org/NET/c4dm/event.owl#Event> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4107> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4107> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#InvitedTalk> . \n " ;
|
|
||||||
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//if the person changes then the invited talk needs to be updated
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n4112");
|
|
||||||
assertTrue("did not find invited talk for person", uris.contains("http://vivo.scripps.edu/individual/n4107" ));
|
|
||||||
|
|
||||||
//if the invited talk changes then the person needs to be updated
|
|
||||||
uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n4107");
|
|
||||||
assertTrue("did not find person for invited talk", uris.contains("http://vivo.scripps.edu/individual/n4112" ));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testResearcherRoleForGrant(){
|
|
||||||
|
|
||||||
String n3 =
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n4957> <http://www.w3.org/2000/01/rdf-schema#label> \"7, Test\" . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n4957> <http://xmlns.com/foaf/0.1/lastName> \"7\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n4957> <http://xmlns.com/foaf/0.1/firstName> \"Test\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4957> <http://purl.obolibrary.org/obo/RO_0000053> <http://vivo.scripps.edu/individual/n4288> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4957> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4957> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4957> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4957> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n4288> <http://www.w3.org/2000/01/rdf-schema#label> \"Researcher Role\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4288> <http://vivoweb.org/ontology/core#dateTimeInterval> <http://vivo.scripps.edu/individual/n4251> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4288> <http://vivoweb.org/ontology/core#relatedBy> <http://vivo.scripps.edu/individual/n4252> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4288> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#ResearcherRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4288> <http://purl.obolibrary.org/obo/RO_0000052> <http://vivo.scripps.edu/individual/n4957> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4288> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Role> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4288> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#ResearcherRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4288> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n4252> <http://www.w3.org/2000/01/rdf-schema#label> \"Grant1\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4252> <http://vivoweb.org/ontology/core#relates> <http://vivo.scripps.edu/individual/n4288> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4252> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#Grant> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4252> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Agreement> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4252> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4252> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Grant> . \n" ;
|
|
||||||
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//if the person changes then the grant needs to be updated
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n4957");
|
|
||||||
assertTrue("did not find service for clinical role", uris.contains("http://vivo.scripps.edu/individual/n4252" ));
|
|
||||||
|
|
||||||
//if the grant changes then the person needs to be updated
|
|
||||||
uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n4252");
|
|
||||||
assertTrue("did not find person for clinical role", uris.contains("http://vivo.scripps.edu/individual/n4957" ));
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testResearcherRoleForProject(){
|
|
||||||
|
|
||||||
String n3 =
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n2029> <http://www.w3.org/2000/01/rdf-schema#label> \"8, Test\" . \n " +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n2029> <http://xmlns.com/foaf/0.1/lastName> \"8\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n2029> <http://xmlns.com/foaf/0.1/firstName> \"Test\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2029> <http://purl.obolibrary.org/obo/RO_0000053> <http://vivo.scripps.edu/individual/n556> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2029> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://xmlns.com/foaf/0.1/Person> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2029> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2029> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2029> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n " +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n556> <http://www.w3.org/2000/01/rdf-schema#label> \"Researcher Role 2\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n556> <http://vivoweb.org/ontology/core#dateTimeInterval> <http://vivo.scripps.edu/individual/n568> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n556> <http://purl.obolibrary.org/obo/BFO_0000054> <http://vivo.scripps.edu/individual/n564> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n556> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#ResearcherRole> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n556> <http://purl.obolibrary.org/obo/RO_0000052> <http://vivo.scripps.edu/individual/n2029> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n556> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Role> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n556> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#ResearcherRole> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n556> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n " +
|
|
||||||
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n564> <http://www.w3.org/2000/01/rdf-schema#label> \"Project2\"^^<http://www.w3.org/2001/XMLSchema#string> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n564> <http://purl.obolibrary.org/obo/BFO_0000055> <http://vivo.scripps.edu/individual/n556> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n564> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#Project> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n564> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Project> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n564> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n " +
|
|
||||||
"<http://vivo.scripps.edu/individual/n564> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Process> . \n " ;
|
|
||||||
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//if the person changes then the project needs to be updated
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n2029");
|
|
||||||
assertTrue("did not find service for clinical role", uris.contains("http://vivo.scripps.edu/individual/n564" ));
|
|
||||||
|
|
||||||
//if the project changes then the person needs to be updated
|
|
||||||
uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n564");
|
|
||||||
assertTrue("did not find person for clinical role", uris.contains("http://vivo.scripps.edu/individual/n2029" ));
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testPrincipalInvestigatorRoleChanges(){
|
|
||||||
|
|
||||||
String n3 =
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n2368> <http://purl.obolibrary.org/obo/RO_0000053> <http://vivo.scripps.edu/individual/n1740> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2368> <http://www.w3.org/2000/01/rdf-schema#label> \"8, Test\" . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n2368> <http://xmlns.com/foaf/0.1/lastName> \"8\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n2368> <http://xmlns.com/foaf/0.1/firstName> \"Test\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2368> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2368> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2368> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n2368> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n1740> <http://purl.obolibrary.org/obo/RO_0000052> <http://vivo.scripps.edu/individual/n2368> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1740> <http://vivoweb.org/ontology/core#dateTimeInterval> <http://vivo.scripps.edu/individual/n1756> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1740> <http://vivoweb.org/ontology/core#relatedBy> <http://vivo.scripps.edu/individual/n1742> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1740> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#PrincipalInvestigatorRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1740> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Role> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1740> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#PrincipalInvestigatorRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1740> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#ResearcherRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1740> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1740> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#InvestigatorRole> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n1742> <http://www.w3.org/2000/01/rdf-schema#label> \"Grant 2\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1742> <http://vivoweb.org/ontology/core#relates> <http://vivo.scripps.edu/individual/n1740> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1742> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#Grant> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1742> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Agreement> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1742> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1742> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Grant> . \n" ;
|
|
||||||
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//if the person changes then the grant needs to be updated
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n2368");
|
|
||||||
assertTrue("did not find grant for pi", uris.contains("http://vivo.scripps.edu/individual/n1742" ));
|
|
||||||
|
|
||||||
//if the grant changes then the person needs to be updated
|
|
||||||
uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n1742");
|
|
||||||
assertTrue("did not find pi for grant", uris.contains("http://vivo.scripps.edu/individual/n2368" ));
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testCoPrincipalInvestigatorRoleChanges(){
|
|
||||||
|
|
||||||
String n3 =
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n1373> <http://www.w3.org/2000/01/rdf-schema#label> \"9, Test\" . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n1373> <http://xmlns.com/foaf/0.1/lastName> \"9\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n1373> <http://xmlns.com/foaf/0.1/firstName> \"Test\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1373> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1373> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1373> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1373> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n1373> <http://purl.obolibrary.org/obo/RO_0000053> <http://vivo.scripps.edu/individual/n4928> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n4928> <http://purl.obolibrary.org/obo/RO_0000052> <http://vivo.scripps.edu/individual/n1373> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4928> <http://vivoweb.org/ontology/core#dateTimeInterval> <http://vivo.scripps.edu/individual/n4895> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4928> <http://vivoweb.org/ontology/core#relatedBy> <http://vivo.scripps.edu/individual/n4931> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4928> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#CoPrincipalInvestigatorRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4928> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#CoPrincipalInvestigatorRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4928> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Role> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4928> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#ResearcherRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4928> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4928> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#InvestigatorRole> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n4931> <http://www.w3.org/2000/01/rdf-schema#label> \"Grant 3\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4931> <http://vivoweb.org/ontology/core#relates> <http://vivo.scripps.edu/individual/n4928> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4931> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#Grant> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4931> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Agreement> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4931> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n4931> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Grant> . \n" ;
|
|
||||||
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//if the copi changes then the grant needs to be updated
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n1373");
|
|
||||||
assertTrue("did not find grant for co-pi", uris.contains("http://vivo.scripps.edu/individual/n4931" ));
|
|
||||||
|
|
||||||
//if the grant changes then the copi needs to be updated
|
|
||||||
uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n4931");
|
|
||||||
assertTrue("did not find co-pi for grant", uris.contains("http://vivo.scripps.edu/individual/n1373" ));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void testInvestigatorRoleChanges(){
|
|
||||||
|
|
||||||
String n3 =
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n5282> <http://www.w3.org/2000/01/rdf-schema#label> \"10, Test\" . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n5282> <http://xmlns.com/foaf/0.1/lastName> \"10\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
// "<http://vivo.scripps.edu/individual/n5282> <http://xmlns.com/foaf/0.1/firstName> \"Test\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5282> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5282> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Agent> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5282> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://xmlns.com/foaf/0.1/Person> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5282> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n5282> <http://purl.obolibrary.org/obo/RO_0000053> <http://vivo.scripps.edu/individual/n157> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n157> <http://vivoweb.org/ontology/core#dateTimeInterval> <http://vivo.scripps.edu/individual/n127> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n157> <http://vivoweb.org/ontology/core#relatedBy> <http://vivo.scripps.edu/individual/n160> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n157> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#InvestigatorRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n157> <http://purl.obolibrary.org/obo/RO_0000052> <http://vivo.scripps.edu/individual/n5282> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n157> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Role> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n157> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#ResearcherRole> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n157> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n157> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#InvestigatorRole> . \n" +
|
|
||||||
|
|
||||||
"<http://vivo.scripps.edu/individual/n160> <http://www.w3.org/2000/01/rdf-schema#label> \"Grant 4\"^^<http://www.w3.org/2001/XMLSchema#string> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n160> <http://vivoweb.org/ontology/core#relates> <http://vivo.scripps.edu/individual/n157> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n160> <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#mostSpecificType> <http://vivoweb.org/ontology/core#Grant> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n160> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Agreement> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n160> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2002/07/owl#Thing> . \n" +
|
|
||||||
"<http://vivo.scripps.edu/individual/n160> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://vivoweb.org/ontology/core#Grant> . \n" ;
|
|
||||||
|
|
||||||
populateModelAndCreateUriFinder(n3);
|
|
||||||
|
|
||||||
//if the investigator changes then the grant needs to be updated
|
|
||||||
List<String> uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n5282");
|
|
||||||
assertTrue("did not find grant for investigator", uris.contains("http://vivo.scripps.edu/individual/n160" ));
|
|
||||||
|
|
||||||
//if the grant changes then the investigator needs to be updated
|
|
||||||
uris = uriFinder.findAdditionalURIsToIndex( "http://vivo.scripps.edu/individual/n160");
|
|
||||||
assertTrue("did not find investigator for grant", uris.contains("http://vivo.scripps.edu/individual/n5282" ));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------
|
|
||||||
// Helper methods
|
|
||||||
// ----------------------------------------------------------------------
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Build a Model from this N3 string, and create a URI Finder based on that
|
|
||||||
* Model.
|
|
||||||
*/
|
|
||||||
private void populateModelAndCreateUriFinder(String n3String) {
|
|
||||||
OntModel model = ModelFactory.createOntologyModel();
|
|
||||||
model.read(new StringReader(n3String), null, "N3");
|
|
||||||
uriFinder = new AdditionalURIsForContextNodes(
|
|
||||||
new RDFServiceModel(model));
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -0,0 +1,492 @@
|
||||||
|
/* $This file is distributed under the terms of the license in /doc/license.txt$ */
|
||||||
|
|
||||||
|
package edu.cornell.mannlib.vitro.webapp.searchindex.extensions;
|
||||||
|
|
||||||
|
import static com.hp.hpl.jena.rdf.model.ResourceFactory.createPlainLiteral;
|
||||||
|
import static com.hp.hpl.jena.rdf.model.ResourceFactory.createProperty;
|
||||||
|
import static com.hp.hpl.jena.rdf.model.ResourceFactory.createResource;
|
||||||
|
import static com.hp.hpl.jena.rdf.model.ResourceFactory.createStatement;
|
||||||
|
import static edu.cornell.mannlib.vitro.webapp.modelaccess.ModelAccess.WhichService.CONTENT;
|
||||||
|
import static edu.cornell.mannlib.vitro.webapp.search.VitroSearchTermNames.ALLTEXT;
|
||||||
|
import static edu.cornell.mannlib.vitro.webapp.search.VitroSearchTermNames.ALLTEXTUNSTEMMED;
|
||||||
|
import static org.junit.Assert.*;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
import org.junit.Before;
|
||||||
|
import org.junit.Test;
|
||||||
|
|
||||||
|
import stubs.edu.cornell.mannlib.vitro.webapp.modelaccess.ContextModelAccessStub;
|
||||||
|
|
||||||
|
import com.hp.hpl.jena.rdf.model.Model;
|
||||||
|
import com.hp.hpl.jena.rdf.model.ModelFactory;
|
||||||
|
import com.hp.hpl.jena.rdf.model.Property;
|
||||||
|
import com.hp.hpl.jena.rdf.model.RDFNode;
|
||||||
|
import com.hp.hpl.jena.rdf.model.Resource;
|
||||||
|
import com.hp.hpl.jena.rdf.model.Statement;
|
||||||
|
import com.hp.hpl.jena.vocabulary.RDF;
|
||||||
|
import com.hp.hpl.jena.vocabulary.RDFS;
|
||||||
|
|
||||||
|
import edu.cornell.mannlib.vitro.testing.AbstractTestClass;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.Individual;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.IndividualImpl;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.beans.VClass;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchInputDocument;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchInputField;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.rdfservice.RDFService;
|
||||||
|
import edu.cornell.mannlib.vitro.webapp.rdfservice.impl.jena.model.RDFServiceModel;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* TODO
|
||||||
|
*/
|
||||||
|
public class LabelsAcrossContextNodesTest extends AbstractTestClass {
|
||||||
|
// Types
|
||||||
|
private static final String CORE_ACADEMIC_DEGREE = "http://vivoweb.org/ontology/core#AcademicDegree";
|
||||||
|
private static final String CORE_ADVISING_RELATIONSHIP = "http://vivoweb.org/ontology/core#AdvisingRelationship";
|
||||||
|
private static final String CORE_POSITION = "http://vivoweb.org/ontology/core#Position";
|
||||||
|
private static final String FOAF_PERSON = "http://xmlns.com/foaf/0.1/#Person";
|
||||||
|
private static final String FOAF_ORGANIZATION = "http://xmlns.com/foaf/0.1/#Organization";
|
||||||
|
|
||||||
|
// Individuals
|
||||||
|
// Note: Person3 has no label and so no effect, but doesn't cause a problem.
|
||||||
|
private static final String URI_PERSON1 = "http://ns#Person1";
|
||||||
|
private static final String NAME_PERSON1 = "Person1";
|
||||||
|
private static final String URI_PERSON2 = "http://ns#Person2";
|
||||||
|
private static final String NAME_PERSON2 = "Person2";
|
||||||
|
private static final String URI_PERSON3 = "http://ns#Person3";
|
||||||
|
private static final String NAME_PERSON3 = null;
|
||||||
|
private static final String URI_PERSON4 = "http://ns#Person4";
|
||||||
|
private static final String NAME_PERSON4 = "Person4";
|
||||||
|
private static final String URI_ORGANIZATION1 = "http://ns#Organization1";
|
||||||
|
private static final String NAME_ORGANIZATION1 = "Organization1";
|
||||||
|
|
||||||
|
// Context nodes
|
||||||
|
private static final String URI_POSITION1 = "http://ns#Position1";
|
||||||
|
private static final String NAME_POSITION1 = "Position1";
|
||||||
|
private static final String URI_POSITION2 = "http://ns#Position2";
|
||||||
|
private static final String NAME_POSITION2 = "Position2";
|
||||||
|
private static final String URI_ADVISING1 = "http://ns#Advising1";
|
||||||
|
private static final String NAME_ADVISING1 = "Advising1";
|
||||||
|
private static final String URI_ADVISING2 = "http://ns#Advising2";
|
||||||
|
private static final String NAME_ADVISING2 = "Advising2";
|
||||||
|
|
||||||
|
// Properties
|
||||||
|
private static final String CORE_RELATED_BY = "http://vivoweb.org/ontology/core#relatedBy";
|
||||||
|
private static final String CORE_RELATES = "http://vivoweb.org/ontology/core#relates";
|
||||||
|
private static final String CORE_ASSIGNED_BY = "http://vivoweb.org/ontology/core#assignedBy";
|
||||||
|
|
||||||
|
private Model m;
|
||||||
|
private RDFService rdfService;
|
||||||
|
private LabelsAcrossContextNodes lacn;
|
||||||
|
private MockSearchInputDocument doc;
|
||||||
|
private List<String> foundUris;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create these relationships (where "r/r" denotes "relatedBy/relates"
|
||||||
|
* combination.
|
||||||
|
*
|
||||||
|
* <pre>
|
||||||
|
* Person1 r/r Position1 r/r Organization1
|
||||||
|
* Person1 r/r AdvisingRelationship1 r/r Person2
|
||||||
|
* Person1 r/r AdvisingRelationship2 r/r Person3(no label!)
|
||||||
|
* Person2 r/r Position2 r/r Organization1
|
||||||
|
* Person4
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
@Before
|
||||||
|
public void populateModel() {
|
||||||
|
m = ModelFactory.createDefaultModel();
|
||||||
|
addIndividual(URI_PERSON1, NAME_PERSON1, FOAF_PERSON);
|
||||||
|
addIndividual(URI_PERSON2, NAME_PERSON2, FOAF_PERSON);
|
||||||
|
addIndividual(URI_PERSON3, NAME_PERSON3, FOAF_PERSON);
|
||||||
|
addIndividual(URI_PERSON4, NAME_PERSON4, FOAF_PERSON);
|
||||||
|
addIndividual(URI_ORGANIZATION1, NAME_ORGANIZATION1, FOAF_ORGANIZATION);
|
||||||
|
addIndividual(URI_POSITION1, NAME_POSITION1, CORE_POSITION);
|
||||||
|
addIndividual(URI_POSITION2, NAME_POSITION2, CORE_POSITION);
|
||||||
|
addIndividual(URI_ADVISING1, NAME_ADVISING1, CORE_ADVISING_RELATIONSHIP);
|
||||||
|
addIndividual(URI_ADVISING2, NAME_ADVISING2, CORE_ADVISING_RELATIONSHIP);
|
||||||
|
|
||||||
|
addRelationship(URI_PERSON1, URI_POSITION1, URI_ORGANIZATION1);
|
||||||
|
addRelationship(URI_PERSON1, URI_ADVISING1, URI_PERSON2);
|
||||||
|
addRelationship(URI_PERSON1, URI_ADVISING2, URI_PERSON3);
|
||||||
|
addRelationship(URI_PERSON2, URI_POSITION2, URI_ORGANIZATION1);
|
||||||
|
|
||||||
|
rdfService = new RDFServiceModel(m);
|
||||||
|
|
||||||
|
ContextModelAccessStub models = new ContextModelAccessStub();
|
||||||
|
models.setRDFService(CONTENT, rdfService);
|
||||||
|
|
||||||
|
lacn = new LabelsAcrossContextNodes();
|
||||||
|
lacn.setContextModels(models);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
// Test DocumentModifier
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
|
||||||
|
/*
|
||||||
|
* If there is a type restriction and the individual does not meet it, no
|
||||||
|
* change.
|
||||||
|
*
|
||||||
|
* If contextNodeClasses are not specified, get labels from all context
|
||||||
|
* nodes. note that a partner without a label should just be a no-op.
|
||||||
|
*
|
||||||
|
* If contextNodeClasses are specified, accept some and ignore others.
|
||||||
|
*
|
||||||
|
* Confirm that the expected data is written to the text fields.
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void noRestrictions_returnLabelsOfAllPartners() {
|
||||||
|
setTypeRestrictions();
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseDocumentModifier(URI_PERSON1);
|
||||||
|
assertExpectedFieldValues(NAME_ORGANIZATION1, NAME_PERSON2);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void typeRestrictionOnCorrectType_returnAll() {
|
||||||
|
setTypeRestrictions(FOAF_PERSON);
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseDocumentModifier(URI_PERSON1);
|
||||||
|
assertExpectedFieldValues(NAME_ORGANIZATION1, NAME_PERSON2);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void typeRestrictionOnWrongType_returnNothing() {
|
||||||
|
setTypeRestrictions(FOAF_ORGANIZATION);
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseDocumentModifier(URI_PERSON1);
|
||||||
|
assertExpectedFieldValues();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void limitByContextNodeType_returnLimited() {
|
||||||
|
setTypeRestrictions();
|
||||||
|
setContextNodeTypes(CORE_POSITION);
|
||||||
|
exerciseDocumentModifier(URI_PERSON1);
|
||||||
|
assertExpectedFieldValues(NAME_ORGANIZATION1);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void inclusiveContextNodeTypes_returnAll() {
|
||||||
|
setTypeRestrictions();
|
||||||
|
setContextNodeTypes(CORE_POSITION, CORE_ADVISING_RELATIONSHIP);
|
||||||
|
exerciseDocumentModifier(URI_PERSON1);
|
||||||
|
assertExpectedFieldValues(NAME_ORGANIZATION1, NAME_PERSON2);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void noContextNodes_noResultsNoProblem() {
|
||||||
|
setTypeRestrictions();
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseDocumentModifier(URI_PERSON4);
|
||||||
|
assertExpectedFieldValues();
|
||||||
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
// Test IndexingUriFinder
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <pre>
|
||||||
|
* If neither a label nor a relates, ignore it.
|
||||||
|
*
|
||||||
|
* If label, test if no partners, if some partners, if some partners restricted by type.
|
||||||
|
* test with both contextNodeClasses and not.
|
||||||
|
* Test with typeRestrictions or without.
|
||||||
|
*
|
||||||
|
* If relates, and fails contextNodeClasses, ignore it.
|
||||||
|
* Test with contextNodeClasses and without.
|
||||||
|
* Find partners, both with typeRestrictions and without.
|
||||||
|
* </pre>
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void irrelevantStatement_returnsNothing() {
|
||||||
|
setTypeRestrictions();
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseUriFinder(stmt(URI_POSITION1, CORE_ASSIGNED_BY, URI_PERSON4));
|
||||||
|
assertExpectedUris();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void label_noPartners_returnsNothing() {
|
||||||
|
setTypeRestrictions();
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseUriFinder(labelStmt(URI_PERSON4, "New Name"));
|
||||||
|
assertExpectedUris();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void label_returnsAllPartners() {
|
||||||
|
setTypeRestrictions();
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseUriFinder(labelStmt(URI_PERSON1, "New Name"));
|
||||||
|
assertExpectedUris(URI_PERSON2, URI_PERSON3, URI_ORGANIZATION1);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void label_restrictByContextNode_returnEligiblePartners() {
|
||||||
|
setTypeRestrictions();
|
||||||
|
setContextNodeTypes(CORE_ADVISING_RELATIONSHIP);
|
||||||
|
exerciseUriFinder(labelStmt(URI_PERSON1, "New Name"));
|
||||||
|
assertExpectedUris(URI_PERSON2, URI_PERSON3);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void label_restrictByContextNodes_returnEligiblePartners() {
|
||||||
|
setTypeRestrictions();
|
||||||
|
setContextNodeTypes(CORE_ADVISING_RELATIONSHIP, CORE_POSITION);
|
||||||
|
exerciseUriFinder(labelStmt(URI_PERSON1, "New Name"));
|
||||||
|
assertExpectedUris(URI_PERSON2, URI_PERSON3, URI_ORGANIZATION1);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void label_typeRestriction_limitsResults() {
|
||||||
|
setTypeRestrictions(FOAF_PERSON);
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseUriFinder(labelStmt(URI_PERSON1, "New Name"));
|
||||||
|
assertExpectedUris(URI_PERSON2, URI_PERSON3);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void label_inclusiveTypeRestrictions_allResults() {
|
||||||
|
setTypeRestrictions(FOAF_PERSON, FOAF_ORGANIZATION);
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseUriFinder(labelStmt(URI_PERSON1, "New Name"));
|
||||||
|
assertExpectedUris(URI_PERSON2, URI_PERSON3, URI_ORGANIZATION1);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void label_prohibitiveTypeRestrictions_nothing() {
|
||||||
|
setTypeRestrictions(CORE_ACADEMIC_DEGREE);
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseUriFinder(labelStmt(URI_PERSON1, "New Name"));
|
||||||
|
assertExpectedUris();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void relates_returnsPartner() {
|
||||||
|
setTypeRestrictions();
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseUriFinder(stmt(URI_POSITION1, CORE_RELATES, URI_PERSON1));
|
||||||
|
assertExpectedUris(URI_ORGANIZATION1);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void relates_inclusiveTypeRestriction_returnsPartner() {
|
||||||
|
setTypeRestrictions(FOAF_ORGANIZATION);
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseUriFinder(stmt(URI_POSITION1, CORE_RELATES, URI_PERSON1));
|
||||||
|
assertExpectedUris(URI_ORGANIZATION1);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void relates_exclusiveTypeRestriction_returnsNothing() {
|
||||||
|
setTypeRestrictions(CORE_ADVISING_RELATIONSHIP);
|
||||||
|
setContextNodeTypes();
|
||||||
|
exerciseUriFinder(stmt(URI_POSITION1, CORE_RELATES, URI_PERSON1));
|
||||||
|
assertExpectedUris();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void relates_inclusiveContextType_returnsPartner() {
|
||||||
|
setTypeRestrictions();
|
||||||
|
setContextNodeTypes(CORE_POSITION);
|
||||||
|
exerciseUriFinder(stmt(URI_POSITION1, CORE_RELATES, URI_PERSON1));
|
||||||
|
assertExpectedUris(URI_ORGANIZATION1);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void relates_exclusiveContextType_returnsNothing() {
|
||||||
|
setTypeRestrictions();
|
||||||
|
setContextNodeTypes(CORE_ADVISING_RELATIONSHIP);
|
||||||
|
exerciseUriFinder(stmt(URI_POSITION1, CORE_RELATES, URI_PERSON1));
|
||||||
|
assertExpectedUris();
|
||||||
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
// Helper methods
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
|
||||||
|
private void addIndividual(String uri, String label, String... types) {
|
||||||
|
Resource subject = createResource(uri);
|
||||||
|
if (label != null) {
|
||||||
|
m.add(subject, RDFS.label, label);
|
||||||
|
}
|
||||||
|
for (String type : types) {
|
||||||
|
m.add(subject, RDF.type, createResource(type));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void addRelationship(String ind1Uri, String contextNodeUri,
|
||||||
|
String ind2Uri) {
|
||||||
|
Resource ind1 = createResource(ind1Uri);
|
||||||
|
Resource contextNode = createResource(contextNodeUri);
|
||||||
|
Resource ind2 = createResource(ind2Uri);
|
||||||
|
Property relatedBy = createProperty(CORE_RELATED_BY);
|
||||||
|
Property relates = createProperty(CORE_RELATES);
|
||||||
|
m.add(ind1, relatedBy, contextNode);
|
||||||
|
m.add(contextNode, relates, ind1);
|
||||||
|
m.add(ind2, relatedBy, contextNode);
|
||||||
|
m.add(contextNode, relates, ind2);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setTypeRestrictions(String... uris) {
|
||||||
|
for (String uri : uris) {
|
||||||
|
lacn.addTypeRestriction(uri);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setContextNodeTypes(String... uris) {
|
||||||
|
for (String uri : uris) {
|
||||||
|
lacn.addContextNodeClass(uri);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void exerciseDocumentModifier(String individualUri) {
|
||||||
|
Individual ind = createIndividual(individualUri);
|
||||||
|
doc = new MockSearchInputDocument();
|
||||||
|
lacn.modifyDocument(ind, doc);
|
||||||
|
}
|
||||||
|
|
||||||
|
private Individual createIndividual(String individualUri) {
|
||||||
|
Individual ind = new IndividualImpl(individualUri);
|
||||||
|
List<VClass> vclasses = new ArrayList<>();
|
||||||
|
for (RDFNode node : m.listObjectsOfProperty(
|
||||||
|
createResource(individualUri), RDF.type).toList()) {
|
||||||
|
if (node.isURIResource()) {
|
||||||
|
vclasses.add(new VClass(node.asResource().getURI()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ind.setVClasses(vclasses, false);
|
||||||
|
return ind;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void assertExpectedFieldValues(String... values) {
|
||||||
|
List<String> expected = new ArrayList<>(Arrays.asList(values));
|
||||||
|
Collections.sort(expected);
|
||||||
|
|
||||||
|
List<String> actual1 = doc.getValues(ALLTEXT);
|
||||||
|
Collections.sort(actual1);
|
||||||
|
assertEquals("ALLTEXT", expected, actual1);
|
||||||
|
|
||||||
|
List<String> actual2 = doc.getValues(ALLTEXTUNSTEMMED);
|
||||||
|
Collections.sort(actual2);
|
||||||
|
assertEquals("ALLTEXTUNSTEMMED", expected, actual2);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void exerciseUriFinder(Statement stmt) {
|
||||||
|
foundUris = lacn.findAdditionalURIsToIndex(stmt);
|
||||||
|
}
|
||||||
|
|
||||||
|
private Statement stmt(String subjectUri, String predicateUri,
|
||||||
|
String objectUri) {
|
||||||
|
return createStatement(createResource(subjectUri),
|
||||||
|
createProperty(predicateUri), createResource(objectUri));
|
||||||
|
}
|
||||||
|
|
||||||
|
private Statement labelStmt(String subjectUri, String labelText) {
|
||||||
|
return createStatement(createResource(subjectUri), RDFS.label,
|
||||||
|
createPlainLiteral(labelText));
|
||||||
|
}
|
||||||
|
|
||||||
|
private void assertExpectedUris(String... expectedArray) {
|
||||||
|
Set<String> expected = new HashSet<>(Arrays.asList(expectedArray));
|
||||||
|
Set<String> actual = new HashSet<>(foundUris);
|
||||||
|
assertEquals("found URIs", expected, actual);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
// Helper classes
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
|
||||||
|
private static class MockSearchInputDocument implements SearchInputDocument {
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
// Stub infrastructure
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
|
||||||
|
private Map<String, List<String>> fieldValues = new HashMap<>();
|
||||||
|
|
||||||
|
public List<String> getValues(String fieldName) {
|
||||||
|
if (fieldValues.containsKey(fieldName)) {
|
||||||
|
return new ArrayList<>(fieldValues.get(fieldName));
|
||||||
|
} else {
|
||||||
|
return new ArrayList<>();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
// Stub methods
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
// Un-implemented methods
|
||||||
|
// ----------------------------------------------------------------------
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addField(SearchInputField arg0) {
|
||||||
|
throw new RuntimeException("addField() not implemented.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addField(String name, Object... values) {
|
||||||
|
List<String> stringValues = getValues(name);
|
||||||
|
for (Object value : values) {
|
||||||
|
stringValues.add(String.valueOf(value));
|
||||||
|
}
|
||||||
|
fieldValues.put(name, stringValues);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addField(String arg0, Collection<Object> arg1) {
|
||||||
|
throw new RuntimeException("addField() not implemented.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addField(String arg0, float arg1, Object... arg2) {
|
||||||
|
throw new RuntimeException("addField() not implemented.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addField(String arg0, float arg1, Collection<Object> arg2) {
|
||||||
|
throw new RuntimeException("addField() not implemented.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SearchInputField createField(String arg0) {
|
||||||
|
throw new RuntimeException("createField() not implemented.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public float getDocumentBoost() {
|
||||||
|
throw new RuntimeException("getDocumentBoost() not implemented.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public SearchInputField getField(String arg0) {
|
||||||
|
throw new RuntimeException("getField() not implemented.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, SearchInputField> getFieldMap() {
|
||||||
|
throw new RuntimeException("getFieldMap() not implemented.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setDocumentBoost(float arg0) {
|
||||||
|
throw new RuntimeException("setDocumentBoost() not implemented.");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -17,7 +17,7 @@ import org.junit.Before;
|
||||||
import org.junit.BeforeClass;
|
import org.junit.BeforeClass;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
import stubs.edu.cornell.mannlib.vitro.webapp.auth.policy.bean.PropertyRestrictionPolicyHelperStub;
|
import stubs.edu.cornell.mannlib.vitro.webapp.auth.policy.bean.PropertyRestrictionBeanStub;
|
||||||
import stubs.javax.servlet.ServletContextStub;
|
import stubs.javax.servlet.ServletContextStub;
|
||||||
|
|
||||||
import com.hp.hpl.jena.ontology.OntModel;
|
import com.hp.hpl.jena.ontology.OntModel;
|
||||||
|
@ -31,7 +31,6 @@ import edu.cornell.mannlib.vitro.testing.AbstractTestClass;
|
||||||
import edu.cornell.mannlib.vitro.webapp.auth.identifier.ArrayIdentifierBundle;
|
import edu.cornell.mannlib.vitro.webapp.auth.identifier.ArrayIdentifierBundle;
|
||||||
import edu.cornell.mannlib.vitro.webapp.auth.identifier.IdentifierBundle;
|
import edu.cornell.mannlib.vitro.webapp.auth.identifier.IdentifierBundle;
|
||||||
import edu.cornell.mannlib.vitro.webapp.auth.identifier.common.HasProfile;
|
import edu.cornell.mannlib.vitro.webapp.auth.identifier.common.HasProfile;
|
||||||
import edu.cornell.mannlib.vitro.webapp.auth.policy.bean.PropertyRestrictionPolicyHelper;
|
|
||||||
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.Authorization;
|
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.Authorization;
|
||||||
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.PolicyDecision;
|
import edu.cornell.mannlib.vitro.webapp.auth.policy.ifaces.PolicyDecision;
|
||||||
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.RequestedAction;
|
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.RequestedAction;
|
||||||
|
@ -123,9 +122,7 @@ public class SelfEditorRelationshipPolicyTest extends AbstractTestClass {
|
||||||
@Before
|
@Before
|
||||||
public void setupPolicy() {
|
public void setupPolicy() {
|
||||||
ServletContextStub ctx = new ServletContextStub();
|
ServletContextStub ctx = new ServletContextStub();
|
||||||
PropertyRestrictionPolicyHelper prph = PropertyRestrictionPolicyHelperStub
|
PropertyRestrictionBeanStub.getInstance(new String[] { NS_RESTRICTED });
|
||||||
.getInstance(new String[] { NS_RESTRICTED });
|
|
||||||
PropertyRestrictionPolicyHelper.setBean(ctx, prph);
|
|
||||||
|
|
||||||
policy = new SelfEditorRelationshipPolicy(ctx);
|
policy = new SelfEditorRelationshipPolicy(ctx);
|
||||||
}
|
}
|
||||||
|
|
|
@ -887,4 +887,5 @@ editor_of_entry = editor of entry for
|
||||||
role_type = Role type
|
role_type = Role type
|
||||||
add_capitalized = Add
|
add_capitalized = Add
|
||||||
researcher_role = Researcher Role
|
researcher_role = Researcher Role
|
||||||
search_service_btn = Search Service
|
search_service_btn = Search Service
|
||||||
|
through_today = through today's date
|
|
@ -27,7 +27,6 @@ utilities/ISF-transition/obsoleteUris
|
||||||
# 7498 89730 2277668 first_pass.output
|
# 7498 89730 2277668 first_pass.output
|
||||||
#
|
#
|
||||||
|
|
||||||
test/edu/cornell/mannlib/vitro/webapp/search/solr/NIHVIVO3853_DataSet1.rdf
|
|
||||||
productMods/WEB-INF/ontologies/update/oldVersion/vivo-event-1.5.owl
|
productMods/WEB-INF/ontologies/update/oldVersion/vivo-event-1.5.owl
|
||||||
productMods/WEB-INF/ontologies/update/oldAnnotations/vivo-core-1.5-annotations.rdf
|
productMods/WEB-INF/ontologies/update/oldAnnotations/vivo-core-1.5-annotations.rdf
|
||||||
productMods/WEB-INF/ontologies/update/diff.tab.txt
|
productMods/WEB-INF/ontologies/update/diff.tab.txt
|
||||||
|
|
|
@ -21,7 +21,6 @@
|
||||||
# 7498 89730 2277668 first_pass.output
|
# 7498 89730 2277668 first_pass.output
|
||||||
#
|
#
|
||||||
|
|
||||||
test/edu/cornell/mannlib/vitro/webapp/search/solr/NIHVIVO3853_DataSet1.rdf
|
|
||||||
productMods/WEB-INF/ontologies/update/oldVersion/vivo-event-1.5.owl
|
productMods/WEB-INF/ontologies/update/oldVersion/vivo-event-1.5.owl
|
||||||
productMods/WEB-INF/ontologies/update/oldAnnotations/vivo-core-1.5-annotations.rdf
|
productMods/WEB-INF/ontologies/update/oldAnnotations/vivo-core-1.5-annotations.rdf
|
||||||
productMods/WEB-INF/ontologies/update/diff.tab.txt
|
productMods/WEB-INF/ontologies/update/diff.tab.txt
|
||||||
|
|
|
@ -7,11 +7,11 @@
|
||||||
<#if (individual.thumbUrl)??>
|
<#if (individual.thumbUrl)??>
|
||||||
<img src="${individual.thumbUrl}" width="90" alt="${individual.name}" />
|
<img src="${individual.thumbUrl}" width="90" alt="${individual.name}" />
|
||||||
<h1 class="thumb">
|
<h1 class="thumb">
|
||||||
<a href="${individual.profileUrl}" title="View the profile page for ${individual.name}}">${individual.name}</a>
|
<a href="${individual.profileUrl}" title="View the profile page for ${individual.name}">${individual.name}</a>
|
||||||
</h1>
|
</h1>
|
||||||
<#else>
|
<#else>
|
||||||
<h1>
|
<h1>
|
||||||
<a href="${individual.profileUrl}" title="View the profile page for ${individual.name}}">${individual.name}</a>
|
<a href="${individual.profileUrl}" title="View the profile page for ${individual.name}">${individual.name}</a>
|
||||||
</h1>
|
</h1>
|
||||||
</#if>
|
</#if>
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue