diff --git a/config/example.runtime.properties b/config/example.runtime.properties
index a25e5922..6e61088d 100644
--- a/config/example.runtime.properties
+++ b/config/example.runtime.properties
@@ -143,7 +143,13 @@ visualization.temporal = enabled
# The format for this property is id, name; id1, name1; id2, name2 etc.
# See Service Metadata from this page http://code.google.com/p/google-refine/wiki/ReconciliationServiceApi
# for more information.
-Vitro.reconcile.defaultTypeList = http://vivoweb.org/ontology/core#Role, core:Role; http://vivoweb.org/ontology/core#AcademicDegree, core:Academic Degree; http://purl.org/NET/c4dm/event.owl#Event, event:Event; http://vivoweb.org/ontology/core#Agreement, core:Agreement; http://vivoweb.org/ontology/core#Location, core:Location; http://xmlns.com/foaf/0.1/Organization, foaf:Organization; http://xmlns.com/foaf/0.1/Person, foaf:Person; http://vivoweb.org/ontology/core#InformationResource, core:Information Resource
+Vitro.reconcile.defaultTypeList = http://vivoweb.org/ontology/core#Role, core:Role; \
+ http://vivoweb.org/ontology/core#AcademicDegree, core:Academic Degree; \
+ http://purl.org/NET/c4dm/event.owl#Event, event:Event; \
+ http://vivoweb.org/ontology/core#Location, core:Location; \
+ http://xmlns.com/foaf/0.1/Organization, foaf:Organization; \
+ http://xmlns.com/foaf/0.1/Person, foaf:Person; \
+ http://purl.obolibrary.org/obo/IAO_0000030, obo:IAO_0000030
#
# Types of individual for which we can create proxy editors.
diff --git a/doc/install.html b/doc/install.html
index 00c033cd..c30b768e 100644
--- a/doc/install.html
+++ b/doc/install.html
@@ -339,6 +339,25 @@ issuing SPARQL queries that read data, and its URI for issuing SPARQL UPDATE com
es_MX
+
- Restart Tomcat to make this change take effect.
+ To make this change take effect, re-deploy VIVO and restart Tomcat.
Supported Browsers
diff --git a/languages/example/themes/wilma/i18n/all_es.properties b/languages/example/themes/wilma/i18n/all_es.properties
index 1dc13fa6..35ac2536 100644
--- a/languages/example/themes/wilma/i18n/all_es.properties
+++ b/languages/example/themes/wilma/i18n/all_es.properties
@@ -194,14 +194,7 @@ hyperlink = Hiperenlace
#
# accounts templates ( /templates/freemarker/body/accounts )
#
-congratulations = ¡Enhorabuena!
-we_have_created_your_account = Hemos creado el nuevo {0} cuenta asociada a {1}.
-did_not_request_text = Si no has solicitado esta nueva cuenta puede ignorar este mensaje. Esta solicitud caducará si no se hubiere pronunciado sobre durante 30 días.
-click_to_create_password = Haga clic en el enlace de abajo para crear la contraseña de su cuenta usando nuestro servidor seguro.
password = contraseña
-if_link_failed = Si el enlace no funciona, puedes copiar y pegar el enlace directamente en la barra de direcciones de su navegador.
-thanks = ¡Gracias!
-paste_the_link = Pega el siguiente enlace en la barra de direcciones de su navegador para crear la contraseña de su cuenta usando nuestro servidor seguro.
#
# harvester templates ( /templates/freemarker/body/harvester )
@@ -356,7 +349,7 @@ selected_conference = Conferencia Seleccionado
years_participation_in = Años de participación en
grant_entry_for = autorizará la entrada de
-select_existing_pub_or_enter_new = Por favor seleccione una subvención actual en el campo de título o ingresar uno nuevo.
+select_existing_pub_or_enter_new = Por favor seleccione una publicación actual en el campo de título o ingresar uno nuevo.
unable_to_handle_grant_editing = Esta forma no es capaz de manejar la edición de esta subvención, ya que se asocia con múltiples individuos subvención.
grant_type = concesión de la
@@ -876,3 +869,7 @@ edit_year_awarded = Editar año concede
publication_date_for = fecha de publicación de
create_publication_date = Crear fecha de publicación
edit_publication_date = Editar fecha de publicación
+name_prefix = Prefijo de nombre
+name_suffix = Sufijo de nombre
+administering_organization_for = administración de la organización para
+missing_credential = falta credencial
\ No newline at end of file
diff --git a/productMods/WEB-INF/ontologies/update/diff.tab.txt b/productMods/WEB-INF/ontologies/update/diff.tab.txt
index f48e8d75..f1500ecb 100644
--- a/productMods/WEB-INF/ontologies/update/diff.tab.txt
+++ b/productMods/WEB-INF/ontologies/update/diff.tab.txt
@@ -1 +1 @@
-http://purl.org/NET/c4dm/event.owl#agent Delete z
http://purl.org/NET/c4dm/event.owl#isAgentIn Delete z
http://purl.org/NET/c4dm/event.owl#produced_in http://purl.obolibrary.org/obo/RO_0002353 Yes z
http://purl.org/NET/c4dm/event.owl#product http://purl.obolibrary.org/obo/RO_0002234 Yes z
http://purl.org/dc/elements/1.1/isVersionOf Delete z
http://vivoweb.org/ontology/core#administeredBy Delete complex construct with grant administrator role
http://purl.org/dc/terms/contributor Delete z
http://purl.org/dc/terms/isReferencedBy Delete z
http://purl.org/dc/terms/isVersionOf Delete z
http://purl.org/dc/terms/publisher http://vivoweb.org/ontology/core#publisher Yes z
http://purl.org/ontology/bibo/editor Delete z
http://vivoweb.org/ontology/core#administers Delete complex construct with grant administrator role
http://vivoweb.org/ontology/core#advisee Delete CC - advising relationship plus add advisee role
http://vivoweb.org/ontology/core#adviseeIn Delete CC - advising relationship plus add advisee role
http://vivoweb.org/ontology/core#advisingContributionTo Delete construct
http://vivoweb.org/ontology/core#advisor Delete CC - advising relationship plus add advisor role
http://vivoweb.org/ontology/core#advisorIn Delete CC - advising relationship plus add advisor role
http://vivoweb.org/ontology/core#associatedRole http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#associatedWithPosition http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#attendeeRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#authorInAuthorship http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#awardConferred http://vivoweb.org/ontology/core#assigns Yes z
http://vivoweb.org/ontology/core#awardConferredBy http://vivoweb.org/ontology/core#assignedBy Yes z
http://vivoweb.org/ontology/core#awardOrHonor http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#awardOrHonorFor http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#awardsGrant http://vivoweb.org/ontology/core#assigns Yes z
http://vivoweb.org/ontology/core#clinicalRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#co-PrincipalInvestigatorRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#courseOfferedBy http://vivoweb.org/ontology/core#offeredBy Yes z
http://vivoweb.org/ontology/core#credentialOf http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#currentMemberOf Delete construct MemberRole
http://vivoweb.org/ontology/core#currentlyHeadOf Delete construct LeaderRole
http://vivoweb.org/ontology/core#currentlyHeadedBy Delete construct LeaderRole
http://vivoweb.org/ontology/core#degreeEarned http://purl.obolibrary.org/obo/RO_0002234 Yes z
http://vivoweb.org/ontology/core#degreeOfferedBy http://vivoweb.org/ontology/core#offeredBy Yes z
http://vivoweb.org/ontology/core#degreeOutcomeOf http://purl.obolibrary.org/obo/RO_0002353 Yes z
http://vivoweb.org/ontology/core#domesticGeographicFocus http://vivoweb.org/ontology/core#geographicFocus Yes z
http://vivoweb.org/ontology/core#domesticGeographicFocusOf http://vivoweb.org/ontology/core#geographicFocusOf Yes z
http://vivoweb.org/ontology/core#editor Delete CC editorship
http://vivoweb.org/ontology/core#editorOf Delete CC editorship
http://vivoweb.org/ontology/core#editorRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#educationalTraining http://purl.obolibrary.org/obo/RO_0000056 Yes z
http://vivoweb.org/ontology/core#educationalTrainingOf http://purl.obolibrary.org/obo/RO_0000057 Yes z
http://vivoweb.org/ontology/core#equipmentInFacility http://purl.obolibrary.org/obo/RO_0001025 Yes """located in"""
http://vivoweb.org/ontology/core#eventWithin http://purl.obolibrary.org/obo/BFO_0000050 Yes """part of"""
http://vivoweb.org/ontology/core#geographicLocationOf http://purl.obolibrary.org/obo/RO_0001015 Yes """location of"""
http://vivoweb.org/ontology/core#geographicallyContains http://purl.obolibrary.org/obo/BFO_0000051 Yes """has part"""
http://vivoweb.org/ontology/core#geographicallyWithin http://purl.obolibrary.org/obo/BFO_0000050 Yes z
http://vivoweb.org/ontology/core#grantAwardedBy http://vivoweb.org/ontology/core#assignedBy Yes z
http://vivoweb.org/ontology/core#hasAttendeeRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasAttendeeRoleContext
http://vivoweb.org/ontology/core#hasClinicalRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasClinicalRoleContext
http://vivoweb.org/ontology/core#hasCo-PrincipalInvestigatorRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasCo-PrincipalInvestigatorRoleContext
http://vivoweb.org/ontology/core#hasCredential http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#hasCurrentMember Delete construct MemberRole
http://vivoweb.org/ontology/core#hasEditorRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasEditorRoleContext
http://vivoweb.org/ontology/core#hasGeographicLocation http://purl.obolibrary.org/obo/RO_0001025 Yes """located in"""
http://vivoweb.org/ontology/core#hasInvestigatorRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasInvestigatorRoleContext
http://vivoweb.org/ontology/core#hasLeaderRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasLeaderRoleContext
http://vivoweb.org/ontology/core#hasMemberRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasMemberRoleContext
http://vivoweb.org/ontology/core#hasOrganizerRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasOrganizerRoleContext
http://vivoweb.org/ontology/core#hasOutreachProviderRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasOutreachProviderContext
http://vivoweb.org/ontology/core#hasPart http://purl.obolibrary.org/obo/BFO_0000051 Yes z
http://vivoweb.org/ontology/core#hasPresenterRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasPresenterRoleContext
http://vivoweb.org/ontology/core#hasPrincipalInvestigatorRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasPrincipalInvestigatorRoleContext
http://vivoweb.org/ontology/core#hasResearcherRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasResearcherRoleContext
http://vivoweb.org/ontology/core#hasReviewerRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasReviewerRoleContext
http://vivoweb.org/ontology/core#hasRole http://purl.obolibrary.org/obo/RO_0000053 Yes z
http://vivoweb.org/ontology/core#hasRoom http://purl.obolibrary.org/obo/BFO_0000051 Yes """has part"""
http://vivoweb.org/ontology/core#hasServiceProviderRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasServiceProviderRoleContext
http://vivoweb.org/ontology/core#hasSubGrant http://purl.obolibrary.org/obo/BFO_0000051 Yes z
http://vivoweb.org/ontology/core#hasSubOrganization http://purl.obolibrary.org/obo/BFO_0000051 Yes z
http://vivoweb.org/ontology/core#hasTeacherRole http://purl.obolibrary.org/obo/RO_0000053 Yes z
http://vivoweb.org/ontology/core#inEventSeries http://purl.obolibrary.org/obo/BFO_0000050 Yes """part of"""
http://vivoweb.org/ontology/core#includesEvent http://purl.obolibrary.org/obo/BFO_0000051 Yes z
http://vivoweb.org/ontology/core#informationProduct http://purl.obolibrary.org/obo/RO_0002234 Yes z
http://vivoweb.org/ontology/core#informationProductOf http://purl.obolibrary.org/obo/RO_0002353 Yes z
http://vivoweb.org/ontology/core#informationResourceInAuthorship http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#internationalGeographicFocus http://vivoweb.org/ontology/core#geographicFocus Yes z
http://vivoweb.org/ontology/core#internationalGeographicFocusOf http://vivoweb.org/ontology/core#geographicFocusOf Yes z
http://vivoweb.org/ontology/core#investigatorRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes """inheres in"""
http://vivoweb.org/ontology/core#issuanceOfCredential http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#issuedCredential http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#leaderRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#linkedAuthor http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#linkedInformationResource http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#locationOfEquipment http://purl.obolibrary.org/obo/RO_0001015 Yes z
http://vivoweb.org/ontology/core#mailingAddress Delete VCard
http://vivoweb.org/ontology/core#mailingAddressFor Delete VCard
http://vivoweb.org/ontology/core#memberRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#offersCourse http://vivoweb.org/ontology/core#offers Yes z
http://vivoweb.org/ontology/core#offersDegree http://vivoweb.org/ontology/core#offers Yes z
http://vivoweb.org/ontology/core#organizationForPosition http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#organizationForTraining http://purl.obolibrary.org/obo/RO_0000056 Yes z
http://vivoweb.org/ontology/core#organizerRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#outcome http://purl.obolibrary.org/obo/RO_0002234 Yes z
http://vivoweb.org/ontology/core#outcomeOf http://purl.obolibrary.org/obo/RO_0002353 Yes z
http://vivoweb.org/ontology/core#outreachProviderRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#partOf http://purl.obolibrary.org/obo/BFO_0000050 Yes z
http://vivoweb.org/ontology/core#personInPosition http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#positionForPerson http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#positionInOrganization http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#presenterRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#principalInvestigatorRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#providesService http://vivoweb.org/ontology/core#offers Yes z
http://vivoweb.org/ontology/core#realizedRole http://purl.obolibrary.org/obo/BFO_0000055 Yes """realizes"""
http://vivoweb.org/ontology/core#receipt http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#receiptOf http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#relatedRole http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#researcherRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#reviewerRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#roleIn http://purl.obolibrary.org/obo/BFO_0000054 Yes """realized in"" (or delete, since there should be subs?)"
http://vivoweb.org/ontology/core#roleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#roleRealizedIn http://purl.obolibrary.org/obo/BFO_0000054 Yes z
http://vivoweb.org/ontology/core#roomWithinBuilding http://purl.obolibrary.org/obo/RO_0001025 Yes z
http://vivoweb.org/ontology/core#seriesForEvent http://purl.obolibrary.org/obo/BFO_0000051 Yes z
http://vivoweb.org/ontology/core#serviceProvidedBy http://vivoweb.org/ontology/core#offeredBy Yes z
http://vivoweb.org/ontology/core#serviceProviderRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#subGrantOf http://purl.obolibrary.org/obo/BFO_0000050 Yes z
http://vivoweb.org/ontology/core#subOrganizationWithin http://purl.obolibrary.org/obo/BFO_0000050 Yes z
http://vivoweb.org/ontology/core#teacherRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#trainingAtOrganization http://purl.obolibrary.org/obo/RO_0000057 Yes z
http://vivoweb.org/ontology/core#authorRank http://vivoweb.org/ontology/core#rank Yes z
http://vivoweb.org/ontology/core#preferredTitle Delete z
http://vivoweb.org/ontology/core#EducationalTraining http://vivoweb.org/ontology/core#EducationalProcess Yes z
http://vivoweb.org/ontology/core#ServiceProviderRole http://purl.obolibrary.org/obo/ERO_0000012 Yes z
http://vivoweb.org/ontology/core#URLLink http://www.w3.org/2006/vcard/ns#URL Yes z
http://vivoweb.org/ontology/core#Agreement Delete z
http://vivoweb.org/ontology/core#InformationResource http://purl.obolibrary.org/obo/IAO_0000030 Yes z
http://vivoweb.org/ontology/core#Service Delete z
http://vivoweb.org/ontology/core#Software http://purl.obolibrary.org/obo/ERO_0000071 Yes z
\ No newline at end of file
+http://purl.org/NET/c4dm/event.owl#agent Delete z
http://purl.org/NET/c4dm/event.owl#isAgentIn Delete z
http://purl.org/NET/c4dm/event.owl#produced_in http://purl.obolibrary.org/obo/RO_0002353 Yes z
http://purl.org/NET/c4dm/event.owl#product http://purl.obolibrary.org/obo/RO_0002234 Yes z
http://purl.org/dc/elements/1.1/isVersionOf Delete z
http://vivoweb.org/ontology/core#administeredBy Delete complex construct with grant administrator role
http://purl.org/dc/terms/isReferencedBy Delete z
http://purl.org/dc/terms/isVersionOf Delete z
http://purl.org/dc/terms/publisher http://vivoweb.org/ontology/core#publisher Yes z
http://purl.org/ontology/bibo/editor Delete z
http://vivoweb.org/ontology/core#administers Delete complex construct with grant administrator role
http://vivoweb.org/ontology/core#advisee Delete CC - advising relationship plus add advisee role
http://vivoweb.org/ontology/core#adviseeIn Delete CC - advising relationship plus add advisee role
http://vivoweb.org/ontology/core#advisingContributionTo Delete construct
http://vivoweb.org/ontology/core#advisor Delete CC - advising relationship plus add advisor role
http://vivoweb.org/ontology/core#advisorIn Delete CC - advising relationship plus add advisor role
http://vivoweb.org/ontology/core#associatedRole http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#associatedWithPosition http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#attendeeRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#authorInAuthorship http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#awardConferred http://vivoweb.org/ontology/core#assigns Yes z
http://vivoweb.org/ontology/core#awardConferredBy http://vivoweb.org/ontology/core#assignedBy Yes z
http://vivoweb.org/ontology/core#awardOrHonor http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#awardOrHonorFor http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#awardsGrant http://vivoweb.org/ontology/core#assigns Yes z
http://vivoweb.org/ontology/core#clinicalRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#co-PrincipalInvestigatorRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#courseOfferedBy http://vivoweb.org/ontology/core#offeredBy Yes z
http://vivoweb.org/ontology/core#credentialOf http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#currentMemberOf Delete construct MemberRole
http://vivoweb.org/ontology/core#currentlyHeadOf Delete construct LeaderRole
http://vivoweb.org/ontology/core#currentlyHeadedBy Delete construct LeaderRole
http://vivoweb.org/ontology/core#degreeEarned http://purl.obolibrary.org/obo/RO_0002234 Yes z
http://vivoweb.org/ontology/core#degreeOfferedBy http://vivoweb.org/ontology/core#offeredBy Yes z
http://vivoweb.org/ontology/core#degreeOutcomeOf http://purl.obolibrary.org/obo/RO_0002353 Yes z
http://vivoweb.org/ontology/core#domesticGeographicFocus http://vivoweb.org/ontology/core#geographicFocus Yes z
http://vivoweb.org/ontology/core#domesticGeographicFocusOf http://vivoweb.org/ontology/core#geographicFocusOf Yes z
http://vivoweb.org/ontology/core#editor Delete CC editorship
http://vivoweb.org/ontology/core#editorOf Delete CC editorship
http://vivoweb.org/ontology/core#editorRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#educationalTraining http://purl.obolibrary.org/obo/RO_0000056 Yes z
http://vivoweb.org/ontology/core#educationalTrainingOf http://purl.obolibrary.org/obo/RO_0000057 Yes z
http://vivoweb.org/ontology/core#equipmentInFacility http://purl.obolibrary.org/obo/RO_0001025 Yes """located in"""
http://vivoweb.org/ontology/core#eventWithin http://purl.obolibrary.org/obo/BFO_0000050 Yes """part of"""
http://vivoweb.org/ontology/core#geographicLocationOf http://purl.obolibrary.org/obo/RO_0001015 Yes """location of"""
http://vivoweb.org/ontology/core#geographicallyContains http://purl.obolibrary.org/obo/BFO_0000051 Yes """has part"""
http://vivoweb.org/ontology/core#geographicallyWithin http://purl.obolibrary.org/obo/BFO_0000050 Yes z
http://vivoweb.org/ontology/core#grantAwardedBy http://vivoweb.org/ontology/core#assignedBy Yes z
http://vivoweb.org/ontology/core#hasAttendeeRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasAttendeeRoleContext
http://vivoweb.org/ontology/core#hasClinicalRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasClinicalRoleContext
http://vivoweb.org/ontology/core#hasCo-PrincipalInvestigatorRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasCo-PrincipalInvestigatorRoleContext
http://vivoweb.org/ontology/core#hasCredential http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#hasCurrentMember Delete construct MemberRole
http://vivoweb.org/ontology/core#hasEditorRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasEditorRoleContext
http://vivoweb.org/ontology/core#hasGeographicLocation http://purl.obolibrary.org/obo/RO_0001025 Yes """located in"""
http://vivoweb.org/ontology/core#hasInvestigatorRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasInvestigatorRoleContext
http://vivoweb.org/ontology/core#hasLeaderRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasLeaderRoleContext
http://vivoweb.org/ontology/core#hasMemberRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasMemberRoleContext
http://vivoweb.org/ontology/core#hasOrganizerRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasOrganizerRoleContext
http://vivoweb.org/ontology/core#hasOutreachProviderRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasOutreachProviderContext
http://vivoweb.org/ontology/core#hasPart http://purl.obolibrary.org/obo/BFO_0000051 Yes z
http://vivoweb.org/ontology/core#hasPresenterRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasPresenterRoleContext
http://vivoweb.org/ontology/core#hasPrincipalInvestigatorRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasPrincipalInvestigatorRoleContext
http://vivoweb.org/ontology/core#hasResearcherRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasResearcherRoleContext
http://vivoweb.org/ontology/core#hasReviewerRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasReviewerRoleContext
http://vivoweb.org/ontology/core#hasRole http://purl.obolibrary.org/obo/RO_0000053 Yes z
http://vivoweb.org/ontology/core#hasRoom http://purl.obolibrary.org/obo/BFO_0000051 Yes """has part"""
http://vivoweb.org/ontology/core#hasServiceProviderRole http://purl.obolibrary.org/obo/RO_0000053 Yes cc:hasServiceProviderRoleContext
http://vivoweb.org/ontology/core#hasSubGrant http://purl.obolibrary.org/obo/BFO_0000051 Yes z
http://vivoweb.org/ontology/core#hasSubOrganization http://purl.obolibrary.org/obo/BFO_0000051 Yes z
http://vivoweb.org/ontology/core#hasTeacherRole http://purl.obolibrary.org/obo/RO_0000053 Yes z
http://vivoweb.org/ontology/core#inEventSeries http://purl.obolibrary.org/obo/BFO_0000050 Yes """part of"""
http://vivoweb.org/ontology/core#includesEvent http://purl.obolibrary.org/obo/BFO_0000051 Yes z
http://vivoweb.org/ontology/core#informationProduct http://purl.obolibrary.org/obo/RO_0002234 Yes z
http://vivoweb.org/ontology/core#informationProductOf http://purl.obolibrary.org/obo/RO_0002353 Yes z
http://vivoweb.org/ontology/core#informationResourceInAuthorship http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#internationalGeographicFocus http://vivoweb.org/ontology/core#geographicFocus Yes z
http://vivoweb.org/ontology/core#internationalGeographicFocusOf http://vivoweb.org/ontology/core#geographicFocusOf Yes z
http://vivoweb.org/ontology/core#investigatorRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes """inheres in"""
http://vivoweb.org/ontology/core#issuanceOfCredential http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#issuedCredential http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#leaderRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#linkedAuthor http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#linkedInformationResource http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#locationOfEquipment http://purl.obolibrary.org/obo/RO_0001015 Yes z
http://vivoweb.org/ontology/core#mailingAddress Delete VCard
http://vivoweb.org/ontology/core#mailingAddressFor Delete VCard
http://vivoweb.org/ontology/core#memberRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#offersCourse http://vivoweb.org/ontology/core#offers Yes z
http://vivoweb.org/ontology/core#offersDegree http://vivoweb.org/ontology/core#offers Yes z
http://vivoweb.org/ontology/core#organizationForPosition http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#organizationForTraining http://purl.obolibrary.org/obo/RO_0000056 Yes z
http://vivoweb.org/ontology/core#organizerRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#outcome http://purl.obolibrary.org/obo/RO_0002234 Yes z
http://vivoweb.org/ontology/core#outcomeOf http://purl.obolibrary.org/obo/RO_0002353 Yes z
http://vivoweb.org/ontology/core#outreachProviderRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#partOf http://purl.obolibrary.org/obo/BFO_0000050 Yes z
http://vivoweb.org/ontology/core#personInPosition http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#positionForPerson http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#positionInOrganization http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#presenterRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#principalInvestigatorRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#providesService http://vivoweb.org/ontology/core#offers Yes z
http://vivoweb.org/ontology/core#realizedRole http://purl.obolibrary.org/obo/BFO_0000055 Yes """realizes"""
http://vivoweb.org/ontology/core#receipt http://vivoweb.org/ontology/core#relatedBy Yes z
http://vivoweb.org/ontology/core#receiptOf http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#relatedRole http://vivoweb.org/ontology/core#relates Yes z
http://vivoweb.org/ontology/core#researcherRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#reviewerRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#roleIn http://purl.obolibrary.org/obo/BFO_0000054 Yes """realized in"" (or delete, since there should be subs?)"
http://vivoweb.org/ontology/core#roleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#roleRealizedIn http://purl.obolibrary.org/obo/BFO_0000054 Yes z
http://vivoweb.org/ontology/core#roomWithinBuilding http://purl.obolibrary.org/obo/RO_0001025 Yes z
http://vivoweb.org/ontology/core#seriesForEvent http://purl.obolibrary.org/obo/BFO_0000051 Yes z
http://vivoweb.org/ontology/core#serviceProvidedBy http://vivoweb.org/ontology/core#offeredBy Yes z
http://vivoweb.org/ontology/core#serviceProviderRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#subGrantOf http://purl.obolibrary.org/obo/BFO_0000050 Yes z
http://vivoweb.org/ontology/core#subOrganizationWithin http://purl.obolibrary.org/obo/BFO_0000050 Yes z
http://vivoweb.org/ontology/core#teacherRoleOf http://purl.obolibrary.org/obo/RO_0000052 Yes z
http://vivoweb.org/ontology/core#trainingAtOrganization http://purl.obolibrary.org/obo/RO_0000057 Yes z
http://vivoweb.org/ontology/core#authorRank http://vivoweb.org/ontology/core#rank Yes z
http://vivoweb.org/ontology/core#preferredTitle Delete z
http://vivoweb.org/ontology/core#EducationalTraining http://vivoweb.org/ontology/core#EducationalProcess Yes z
http://vivoweb.org/ontology/core#ServiceProviderRole http://purl.obolibrary.org/obo/ERO_0000012 Yes z
http://vivoweb.org/ontology/core#URLLink http://www.w3.org/2006/vcard/ns#URL Yes z
http://vivoweb.org/ontology/core#Agreement Delete z
http://vivoweb.org/ontology/core#InformationResource http://purl.obolibrary.org/obo/IAO_0000030 Yes z
http://vivoweb.org/ontology/core#Service Delete z
http://vivoweb.org/ontology/core#Software http://purl.obolibrary.org/obo/ERO_0000071 Yes z
\ No newline at end of file
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/AdvisingRelationship.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/AdviseeRole.sparql
similarity index 57%
rename from productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/AdvisingRelationship.sparql
rename to productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/AdviseeRole.sparql
index 71d12749..c79d5687 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/AdvisingRelationship.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/AdviseeRole.sparql
@@ -6,18 +6,14 @@ CONSTRUCT {
?advisee _:AdviseeRole .
_:AdviseeRole ?advisee .
_:AdviseeRole a vivo:AdviseeRole .
- ?advisor _:AdvisorRole .
- _:AdvisorRole ?advisor .
- _:AdvisorRole a vivo:AdvisorRole .
_:AdviseeRole vivo:relatedBy ?advisingRelationship .
?advisingRelationship vivo:relates _:AdviseeRole .
- _:AdvisorRole vivo:relatedBy ?advisingRelationship .
- ?advisingRelationship vivo:relates _:AdvisorRole .
?advisingRelationship vivo:relates ?advisee .
- ?advisingRelationship vivo:relates ?advisor .
?advisee vivo:relatedBy ?advisingRelationship .
- ?advisor vivo:relatedBy ?advisingRelationship .
} WHERE {
?advisee vivo:adviseeIn ?advisingRelationship .
- ?advisor vivo:advisorIn ?advisingRelationship .
+ FILTER NOT EXISTS {
+ ?advisee ?adviseeRoleNode .
+ ?adviseeRoleNode vivo:relatedBy ?advisingRelationship .
+ }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/AdvisorRole.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/AdvisorRole.sparql
new file mode 100644
index 00000000..8a389c08
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/AdvisorRole.sparql
@@ -0,0 +1,19 @@
+PREFIX vivo:
+PREFIX owl:
+PREFIX foaf:
+
+CONSTRUCT {
+ ?advisor _:AdvisorRole .
+ _:AdvisorRole ?advisor .
+ _:AdvisorRole a vivo:AdvisorRole .
+ _:AdvisorRole vivo:relatedBy ?advisingRelationship .
+ ?advisingRelationship vivo:relates _:AdvisorRole .
+ ?advisingRelationship vivo:relates ?advisor .
+ ?advisor vivo:relatedBy ?advisingRelationship .
+} WHERE {
+ ?advisor vivo:advisorIn ?advisingRelationship .
+ FILTER NOT EXISTS {
+ ?advisor ?advisorRoleNode .
+ ?advisorRoleNode vivo:relatedBy ?advisingRelationship .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/Editorship.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/Editorship.sparql
index 79e50249..204664f8 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/Editorship.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/Editorship.sparql
@@ -14,5 +14,9 @@ CONSTRUCT {
} UNION {
?document vivo:editor ?person
FILTER NOT EXISTS { ?person vivo:editorOf ?document }
+ }
+ FILTER NOT EXISTS {
+ ?person vivo:relatedBy ?editorshipNode .
+ ?editorshipNode vivo:relates ?document .
}
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/LeaderRole.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/LeaderRole.sparql
index b5236339..2a09ef27 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/LeaderRole.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/LeaderRole.sparql
@@ -14,4 +14,8 @@ CONSTRUCT {
{ ?org vivo:currentlyHeadedBy ?person
FILTER NOT EXISTS { ?person vivo:currentlyHeadOf ?org }
}
+ FILTER NOT EXISTS {
+ ?person ?leaderRoleNode .
+ ?leaderRoleNode vivo:roleContributesTo ?org .
+ }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/MemberRole.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/MemberRole.sparql
index fecea0cc..85a5b275 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/MemberRole.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/MemberRole.sparql
@@ -14,4 +14,8 @@ CONSTRUCT {
{ ?org vivo:hasCurrentMember ?person
FILTER NOT EXISTS { ?person vivo:currentMemberOf ?org }
}
+ FILTER NOT EXISTS {
+ ?person ?memberRoleNode .
+ ?memberRoleNode vivo:roleContributesTo ?org .
+ }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/grantAdmin.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/grantAdmin.sparql
index d76c98d7..72315e11 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/grantAdmin.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/grantAdmin.sparql
@@ -16,4 +16,9 @@ CONSTRUCT {
{ ?grant vivo:administeredBy ?agent
FILTER NOT EXISTS { ?agent vivo:administers ?grant }
}
+ FILTER NOT EXISTS {
+ ?agent ?adminRoleNode .
+ ?adminRoleNode a vivo:AdministratorRole .
+ ?adminRoleNode vivo:relatedBy ?grant .
+ }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/post/Grant.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/post/Grant.sparql
index 64d32879..f778da76 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/post/Grant.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/post/Grant.sparql
@@ -7,6 +7,7 @@ CONSTRUCT {
?grant vivo:relates ?agent
} WHERE {
?agent ?role .
- ?role vivo:relatedBy ?grant
+ ?role vivo:relatedBy ?grant .
+ ?grant a vivo:Grant .
FILTER NOT EXISTS { ?grant vivo:relates ?agent }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/post/awardedDegree.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/post/awardedDegree.sparql
index 8d90cd6d..5beaf5a2 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/post/awardedDegree.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/post/awardedDegree.sparql
@@ -22,4 +22,8 @@ CONSTRUCT {
?educationalProcess ?org .
?org a foaf:Organization
}
+ FILTER NOT EXISTS {
+ ?educationalProcess ?awardedDegreeNode .
+ ?person vivo:relatedBy ?awardedDegreeNode .
+ }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/post/contributingAdvising.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/post/contributingAdvising.sparql
index a80f3c79..af1e6871 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/post/contributingAdvising.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/post/contributingAdvising.sparql
@@ -6,10 +6,10 @@ CONSTRUCT {
?educationalProcess ?role .
?role ?educationalProcess .
} WHERE {
+ ?educationalProcess vivo:contributingAdvising ?advising .
?person ?educationalProcess .
?person a foaf:Person .
?educationalProcess a vivo:EducationalProcess .
- ?educationalProcess vivo:contributingAdvising ?advising .
?advising vivo:relates ?role .
?role a .
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0.sparql
deleted file mode 100644
index a9262a27..00000000
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0.sparql
+++ /dev/null
@@ -1,24 +0,0 @@
-PREFIX arg:
-PREFIX foaf:
-PREFIX v:
-PREFIX vivo:
-
-CONSTRUCT {
- ?s arg:ARG_2000028 _:vcard .
- _:vcard arg:ARG_2000029 ?s .
- _:vcard a v:Individual .
-} WHERE {
- ?s a foaf:Person
- FILTER (
- EXISTS { ?s foaf:firstName ?firstName } ||
- EXISTS { ?s foaf:lastName ?lastName } ||
- EXISTS { ?s vivo:middleName ?middleName } ||
- EXISTS { ?s vivo:email ?email } ||
- EXISTS { ?s vivo:primaryEmail ?primaryEmail } ||
- EXISTS { ?s vivo:phoneNumber ?phoneNumber } ||
- EXISTS { ?s vivo:primaryPhoneNumber ?primaryPhoneNumber } ||
- EXISTS { ?s vivo:faxNumber ?faxNumber } ||
- EXISTS { ?s vivo:mailingAddress ?address } ||
- EXISTS { ?s vivo:webpage ?webpage }
- )
-}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0a.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0a.sparql
new file mode 100644
index 00000000..193cc5aa
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0a.sparql
@@ -0,0 +1,15 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Individual .
+} WHERE {
+ ?s foaf:firstName ?firstName
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0b.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0b.sparql
new file mode 100644
index 00000000..f41fd0bc
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0b.sparql
@@ -0,0 +1,15 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Individual .
+} WHERE {
+ ?s foaf:lastName ?lastName
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0c.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0c.sparql
new file mode 100644
index 00000000..7443d28a
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0c.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Individual .
+} WHERE {
+ ?s vivo:middleName ?middleName .
+ ?s a foaf:Person
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0d.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0d.sparql
new file mode 100644
index 00000000..1842a23a
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0d.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Individual .
+} WHERE {
+ ?s vivo:email ?email .
+ ?s a foaf:Person .
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0e.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0e.sparql
new file mode 100644
index 00000000..f392f36e
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0e.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Individual .
+} WHERE {
+ ?s vivo:primaryEmail ?email .
+ ?s a foaf:Person .
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0f.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0f.sparql
new file mode 100644
index 00000000..d01698a8
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0f.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Individual .
+} WHERE {
+ ?s vivo:phoneNumber ?phoneNumber .
+ ?s a foaf:Person .
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0g.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0g.sparql
new file mode 100644
index 00000000..a578d3e0
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0g.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Individual .
+} WHERE {
+ ?s vivo:primaryPhoneNumber ?primaryPhoneNumber .
+ ?s a foaf:Person
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0h.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0h.sparql
new file mode 100644
index 00000000..8abf7951
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0h.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Individual .
+} WHERE {
+ ?s vivo:faxNumber ?faxNumber .
+ ?s a foaf:Person
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0i.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0i.sparql
new file mode 100644
index 00000000..1e966109
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0i.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Individual .
+} WHERE {
+ ?s vivo:mailingAddress ?address .
+ ?s a foaf:Person
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0j.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0j.sparql
new file mode 100644
index 00000000..22857e64
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-0j.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Individual .
+} WHERE {
+ ?s vivo:webpage ?webpage .
+ ?s a foaf:Person
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1.sparql
deleted file mode 100644
index a15d4d0f..00000000
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1.sparql
+++ /dev/null
@@ -1,21 +0,0 @@
-PREFIX arg:
-PREFIX foaf:
-PREFIX v:
-PREFIX vivo:
-
-CONSTRUCT {
- ?s arg:ARG_2000028 _:vcard .
- _:vcard arg:ARG_2000029 ?s .
- _:vcard a v:Organization .
-} WHERE {
- ?s a foaf:Organization
- FILTER (
- EXISTS { ?s vivo:email ?email } ||
- EXISTS { ?s vivo:primaryEmail ?primaryEmail } ||
- EXISTS { ?s vivo:phoneNumber ?phoneNumber } ||
- EXISTS { ?s vivo:primaryPhoneNumber ?primaryPhoneNumber } ||
- EXISTS { ?s vivo:faxNumber ?faxNumber } ||
- EXISTS { ?s vivo:mailingAddress ?address } ||
- EXISTS { ?s vivo:webpage ?webpage }
- )
-}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1d.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1d.sparql
new file mode 100644
index 00000000..b7a4c933
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1d.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Organization .
+} WHERE {
+ ?s vivo:email ?email .
+ ?s a foaf:Organization .
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1e.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1e.sparql
new file mode 100644
index 00000000..fad907f8
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1e.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Organization .
+} WHERE {
+ ?s vivo:primaryEmail ?email .
+ ?s a foaf:Organization .
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1f.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1f.sparql
new file mode 100644
index 00000000..5baf40f5
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1f.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Organization .
+} WHERE {
+ ?s vivo:phoneNumber ?phoneNumber .
+ ?s a foaf:Organization .
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1g.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1g.sparql
new file mode 100644
index 00000000..90c98507
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1g.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Organization .
+} WHERE {
+ ?s vivo:primaryPhoneNumber ?primaryPhoneNumber .
+ ?s a foaf:Organization
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1h.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1h.sparql
new file mode 100644
index 00000000..036b1c92
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1h.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Organization .
+} WHERE {
+ ?s vivo:faxNumber ?faxNumber .
+ ?s a foaf:Organization
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1i.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1i.sparql
new file mode 100644
index 00000000..071cf222
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1i.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Organization .
+} WHERE {
+ ?s vivo:mailingAddress ?address .
+ ?s a foaf:Organization
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1j.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1j.sparql
new file mode 100644
index 00000000..a7690455
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-1j.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Organization .
+} WHERE {
+ ?s vivo:webpage ?webpage .
+ ?s a foaf:Organization
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2.sparql
deleted file mode 100644
index b966a2a3..00000000
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2.sparql
+++ /dev/null
@@ -1,21 +0,0 @@
-PREFIX arg:
-PREFIX foaf:
-PREFIX v:
-PREFIX vivo:
-
-CONSTRUCT {
- ?s arg:ARG_2000028 _:vcard .
- _:vcard arg:ARG_2000029 ?s .
- _:vcard a v:Group .
-} WHERE {
- ?s a foaf:Group
- FILTER (
- EXISTS { ?s vivo:email ?email } ||
- EXISTS { ?s vivo:primaryEmail ?primaryEmail } ||
- EXISTS { ?s vivo:phoneNumber ?phoneNumber } ||
- EXISTS { ?s vivo:primaryPhoneNumber ?primaryPhoneNumber } ||
- EXISTS { ?s vivo:faxNumber ?faxNumber } ||
- EXISTS { ?s vivo:mailingAddress ?address } ||
- EXISTS { ?s vivo:webpage ?webpage }
- )
-}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2d.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2d.sparql
new file mode 100644
index 00000000..37add2fa
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2d.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Group .
+} WHERE {
+ ?s vivo:email ?email .
+ ?s a foaf:Group .
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2e.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2e.sparql
new file mode 100644
index 00000000..27f965b6
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2e.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Group .
+} WHERE {
+ ?s vivo:primaryEmail ?email .
+ ?s a foaf:Group .
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2f.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2f.sparql
new file mode 100644
index 00000000..3018c379
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2f.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Group .
+} WHERE {
+ ?s vivo:phoneNumber ?phoneNumber .
+ ?s a foaf:Group .
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2g.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2g.sparql
new file mode 100644
index 00000000..7b0de744
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2g.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Group .
+} WHERE {
+ ?s vivo:primaryPhoneNumber ?primaryPhoneNumber .
+ ?s a foaf:Group
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2h.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2h.sparql
new file mode 100644
index 00000000..2ebffbbc
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2h.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Group .
+} WHERE {
+ ?s vivo:faxNumber ?faxNumber .
+ ?s a foaf:Group
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2i.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2i.sparql
new file mode 100644
index 00000000..3e83b11e
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2i.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Group .
+} WHERE {
+ ?s vivo:mailingAddress ?address .
+ ?s a foaf:Group
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2j.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2j.sparql
new file mode 100644
index 00000000..3ec0ab9e
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-2j.sparql
@@ -0,0 +1,16 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+
+CONSTRUCT {
+ ?s arg:ARG_2000028 _:vcard .
+ _:vcard arg:ARG_2000029 ?s .
+ _:vcard a v:Group .
+} WHERE {
+ ?s vivo:webpage ?webpage .
+ ?s a foaf:Group
+ FILTER NOT EXISTS {
+ ?s arg:ARG_2000028 ?vcard .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-3.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-3.sparql
index 96076c4f..fb409425 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-3.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard1-3.sparql
@@ -7,7 +7,7 @@ PREFIX owl:
CONSTRUCT {
?s arg:ARG_2000028 _:vcard .
_:vcard arg:ARG_2000029 ?s .
- _:vcard a v:Individual .
+ _:vcard a v:Kind .
} WHERE {
?s vivo:webpage ?webpage
FILTER NOT EXISTS { ?s a foaf:Agent }
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2.sparql
deleted file mode 100644
index 499d0bbb..00000000
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2.sparql
+++ /dev/null
@@ -1,36 +0,0 @@
-PREFIX arg:
-PREFIX foaf:
-PREFIX v:
-PREFIX vivo:
-PREFIX bibo:
-
-CONSTRUCT {
- ?vcard v:hasName _:name .
- _:name a v:Name .
- _:name v:givenName ?firstName .
- _:name vivo:middleName ?middleName .
- _:name v:familyName ?lastName .
- _:name v:honorificPrefix ?prefix .
- _:name v:honorificSuffix ?suffix .
-} WHERE {
- ?s arg:ARG_2000028 ?vcard .
- OPTIONAL {
- ?s foaf:firstName ?firstName .
- BIND("yes" as ?test)
- }
- OPTIONAL {
- ?s foaf:lastName ?lastName .
- BIND("yes" as ?test)
- }
- OPTIONAL {
- ?s vivo:middleName ?middleName
- BIND("yes" as ?test)
- }
- OPTIONAL {
- ?s bibo:prefixName ?prefix
- }
- OPTIONAL {
- ?s bibo:suffixName ?suffix
- }
- FILTER(bound(?test))
-}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard22.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard22.sparql
index 9107814a..db2f6276 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard22.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard22.sparql
@@ -9,6 +9,9 @@ CONSTRUCT {
_:title a v:Title .
_:title v:title ?preferredTitle .
} WHERE {
- ?s arg:ARG_2000028 ?vcard .
?s ?preferredTitle .
+ ?s arg:ARG_2000028 ?vcard .
+ FILTER NOT EXISTS {
+ ?vcard v:hasTitle ?title
+ }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2a.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2a.sparql
new file mode 100644
index 00000000..ef2dc2ba
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2a.sparql
@@ -0,0 +1,17 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+PREFIX bibo:
+
+CONSTRUCT {
+ ?vcard v:hasName _:name .
+ _:name a v:Name .
+ _:name v:givenName ?firstName .
+} WHERE {
+ ?s foaf:firstName ?firstName .
+ ?s arg:ARG_2000028 ?vcard .
+ FILTER NOT EXISTS {
+ ?vcard v:hasName ?name
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2b.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2b.sparql
new file mode 100644
index 00000000..64634413
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2b.sparql
@@ -0,0 +1,13 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+PREFIX bibo:
+
+CONSTRUCT {
+ ?name v:givenName ?firstName .
+} WHERE {
+ ?s foaf:firstName ?firstName .
+ ?s arg:ARG_2000028 ?vcard .
+ ?vcard v:hasName ?name
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2c.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2c.sparql
new file mode 100644
index 00000000..dbcaf50a
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2c.sparql
@@ -0,0 +1,17 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+PREFIX bibo:
+
+CONSTRUCT {
+ ?vcard v:hasName _:name .
+ _:name a v:Name .
+ _:name vivo:middleName ?middleName .
+} WHERE {
+ ?s vivo:middleName ?middleName .
+ ?s arg:ARG_2000028 ?vcard .
+ FILTER NOT EXISTS {
+ ?vcard v:hasName ?name
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2d.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2d.sparql
new file mode 100644
index 00000000..cb32f1b9
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2d.sparql
@@ -0,0 +1,14 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+PREFIX bibo:
+
+CONSTRUCT {
+ ?name vivo:middleName ?middleName .
+} WHERE {
+ ?s vivo:middleName ?middleName .
+ ?s a foaf:Person .
+ ?s arg:ARG_2000028 ?vcard .
+ ?vcard v:hasName ?name
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2e.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2e.sparql
new file mode 100644
index 00000000..cfa9ea92
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2e.sparql
@@ -0,0 +1,17 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+PREFIX bibo:
+
+CONSTRUCT {
+ ?vcard v:hasName _:name .
+ _:name a v:Name .
+ _:name v:familyName ?lastName .
+} WHERE {
+ ?s foaf:lastName ?lastName .
+ ?s arg:ARG_2000028 ?vcard .
+ FILTER NOT EXISTS {
+ ?vcard v:hasName ?name
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2f.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2f.sparql
new file mode 100644
index 00000000..4337be4d
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2f.sparql
@@ -0,0 +1,13 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+PREFIX bibo:
+
+CONSTRUCT {
+ ?name v:familyName ?lastName .
+} WHERE {
+ ?s foaf:lastName ?lastName .
+ ?s arg:ARG_2000028 ?vcard .
+ ?vcard v:hasName ?name
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2g.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2g.sparql
new file mode 100644
index 00000000..66231ddf
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2g.sparql
@@ -0,0 +1,17 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+PREFIX bibo:
+
+CONSTRUCT {
+ ?vcard v:hasName _:name .
+ _:name a v:Name .
+ _:name v:honorificPrefix ?prefixName .
+} WHERE {
+ ?s bibo:prefixName ?prefixName .
+ ?s arg:ARG_2000028 ?vcard .
+ FILTER NOT EXISTS {
+ ?vcard v:hasName ?name
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2h.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2h.sparql
new file mode 100644
index 00000000..1eb06b3b
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2h.sparql
@@ -0,0 +1,13 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+PREFIX bibo:
+
+CONSTRUCT {
+ ?name v:honorificPrefix ?prefixName .
+} WHERE {
+ ?s bibo:prefixName ?prefixName .
+ ?s arg:ARG_2000028 ?vcard .
+ ?vcard v:hasName ?name
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2i.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2i.sparql
new file mode 100644
index 00000000..5d873f15
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2i.sparql
@@ -0,0 +1,17 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+PREFIX bibo:
+
+CONSTRUCT {
+ ?vcard v:hasName _:name .
+ _:name a v:Name .
+ _:name v:honorificSuffix ?suffixName .
+} WHERE {
+ ?s bibo:suffixName ?suffixName .
+ ?s arg:ARG_2000028 ?vcard .
+ FILTER NOT EXISTS {
+ ?vcard v:hasName ?name
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2j.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2j.sparql
new file mode 100644
index 00000000..a3abaff9
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard2j.sparql
@@ -0,0 +1,13 @@
+PREFIX arg:
+PREFIX foaf:
+PREFIX v:
+PREFIX vivo:
+PREFIX bibo:
+
+CONSTRUCT {
+ ?name v:honorificSuffix ?suffixName .
+} WHERE {
+ ?s bibo:suffixName ?suffixName .
+ ?s arg:ARG_2000028 ?vcard .
+ ?vcard v:hasName ?name
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard3.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard3.sparql
index 91991c9e..2952d182 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard3.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard3.sparql
@@ -8,6 +8,9 @@ CONSTRUCT {
_:email a v:Email .
_:email v:email ?email .
} WHERE {
+ ?s vivo:email ?email .
?s arg:ARG_2000028 ?vcard .
- ?s vivo:email ?email
+ FILTER NOT EXISTS {
+ ?vcard v:hasEmail ?emailnode
+ }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard4.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard4.sparql
index b6f9409f..8699c703 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard4.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard4.sparql
@@ -9,6 +9,10 @@ CONSTRUCT {
_:primaryEmail a v:Work .
_:primaryEmail v:email ?primaryEmail .
} WHERE {
+ ?s vivo:primaryEmail ?primaryEmail .
?s arg:ARG_2000028 ?vcard .
- ?s vivo:primaryEmail ?primaryEmail
+ FILTER NOT EXISTS {
+ ?vcard v:hasEmail ?email .
+ ?email a v:Work .
+ }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard5.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard5.sparql
index 6deedc83..26017bc1 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard5.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard5.sparql
@@ -9,6 +9,9 @@ CONSTRUCT {
_:telephone a v:Voice .
_:telephone v:telephone ?phoneNumber .
} WHERE {
+ ?s vivo:phoneNumber ?phoneNumber .
?s arg:ARG_2000028 ?vcard .
- ?s vivo:phoneNumber ?phoneNumber
+ FILTER NOT EXISTS {
+ ?vcard v:hasTelephone ?telephoneNode .
+ }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard6.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard6.sparql
index d5c0f26e..8bc690a0 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard6.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard6.sparql
@@ -10,6 +10,10 @@ CONSTRUCT {
_:primaryTelephone a v:Work .
_:primaryTelephone v:telephone ?primaryPhoneNumber .
} WHERE {
+ ?s vivo:primaryPhoneNumber ?primaryPhoneNumber .
?s arg:ARG_2000028 ?vcard .
- ?s vivo:primaryPhoneNumber ?primaryPhoneNumber
+ FILTER NOT EXISTS {
+ ?vcard v:hasTelephone ?telephoneNode .
+ ?vcard a v:Work .
+ }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard7.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard7.sparql
index 39982679..c94a7638 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard7.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard7.sparql
@@ -9,6 +9,10 @@ CONSTRUCT {
_:fax a v:Fax.
_:fax v:telephone ?faxNumber .
} WHERE {
+ ?s vivo:faxNumber ?faxNumber .
?s arg:ARG_2000028 ?vcard .
- ?s vivo:faxNumber ?faxNumber
+ FILTER NOT EXISTS {
+ ?vcard v:hasTelephone ?faxNode .
+ ?faxNode a v:Fax .
+ }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard8.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard8.sparql
index eb88f650..a1a53389 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard8.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard8.sparql
@@ -11,13 +11,16 @@ CONSTRUCT {
_:address v:region ?addressState .
_:address v:postalCode ?addressPostalCode .
_:address v:country ?addressCountry .
+ _:address ?location .
+ ?location _:address .
} WHERE {
- ?s arg:ARG_2000028 ?vcard .
?s vivo:mailingAddress ?address .
- ?address vivo:addressCity ?addressCity .
- ?address vivo:addressState ?addressState .
- ?address vivo:addressCountry ?addressCountry .
- ?address vivo:addressPostalCode ?addressPostalCode .
+ OPTIONAL { ?address vivo:addressCity ?addressCity }
+ OPTIONAL { ?address vivo:addressState ?addressState }
+ OPTIONAL { ?address vivo:addressPostalCode ?addressPostalCode }
+ OPTIONAL { ?address vivo:addressCountry ?addressCountry }
+ OPTIONAL { ?address vivo:hasGeographicLocation ?location }
+ ?s arg:ARG_2000028 ?vcard .
OPTIONAL {
?address vivo:address1 ?address1 .
?address vivo:address2 ?address2 .
@@ -33,5 +36,8 @@ CONSTRUCT {
OPTIONAL {
?address vivo:address1 ?address1
BIND(?address1 as ?streetAddress)
+ }
+ FILTER NOT EXISTS {
+ ?vcard v:hasAddress ?addressNode
}
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard9.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard9.sparql
index d400de8f..62c04e1b 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard9.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/additions/vcard9.sparql
@@ -10,10 +10,13 @@ CONSTRUCT {
_:url v:url ?linkURI .
_:url rdfs:label ?linkAnchorText
} WHERE {
- ?s arg:ARG_2000028 ?vcard .
?s vivo:webpage ?webpage .
?webpage vivo:linkURI ?linkURI .
+ ?s arg:ARG_2000028 ?vcard .
OPTIONAL {
?webpage vivo:linkAnchorText ?linkAnchorText
}
+ FILTER NOT EXISTS {
+ ?vcard v:hasURL ?URLNode
+ }
}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/deletions/AdvisingRelationshipDel.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/deletions/AdvisingRelationshipDel.sparql
index 5a47e087..3bb114bd 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/deletions/AdvisingRelationshipDel.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/deletions/AdvisingRelationshipDel.sparql
@@ -3,15 +3,9 @@ PREFIX owl:
PREFIX foaf:
CONSTRUCT {
- ?advisee vivo:adviseeIn ?advisingRelationship .
- ?advisingRelationship vivo:advisee ?advisee .
?advisor vivo:advisorIn ?advisingRelationship .
?advisingRelationship vivo:advisor ?advisor
} WHERE {
- ?advisee vivo:adviseeIn ?advisingRelationship .
- OPTIONAL {
- ?advisingRelationship vivo:advisee ?advisee .
- }
?advisor vivo:advisorIn ?advisingRelationship .
OPTIONAL {
?advisingRelationship vivo:advisor ?advisor
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/deletions/AdvisingRelationshipDel2.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/deletions/AdvisingRelationshipDel2.sparql
new file mode 100644
index 00000000..6ef6c59e
--- /dev/null
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/deletions/AdvisingRelationshipDel2.sparql
@@ -0,0 +1,13 @@
+PREFIX vivo:
+PREFIX owl:
+PREFIX foaf:
+
+CONSTRUCT {
+ ?advisee vivo:adviseeIn ?advisingRelationship .
+ ?advisingRelationship vivo:advisee ?advisee .
+} WHERE {
+ ?advisee vivo:adviseeIn ?advisingRelationship .
+ OPTIONAL {
+ ?advisingRelationship vivo:advisee ?advisee .
+ }
+}
diff --git a/productMods/WEB-INF/ontologies/update/sparqlConstructs/deletions/vcardDel.sparql b/productMods/WEB-INF/ontologies/update/sparqlConstructs/deletions/vcardDel.sparql
index 439b7599..1eb00279 100644
--- a/productMods/WEB-INF/ontologies/update/sparqlConstructs/deletions/vcardDel.sparql
+++ b/productMods/WEB-INF/ontologies/update/sparqlConstructs/deletions/vcardDel.sparql
@@ -17,6 +17,7 @@ CONSTRUCT {
?s vivo:faxNumber ?faxNumber .
?s vivo:mailingAddress ?address .
?address ?addressP ?addressO .
+ ?addressS ?addressQ ?address .
?s vivo:webpage ?webpage .
?webpage ?webpageP ?webpageO .
} WHERE {
@@ -27,7 +28,8 @@ CONSTRUCT {
?s foaf:lastName ?lastName .
}
UNION {
- ?s vivo:middleName ?middleName
+ ?s vivo:middleName ?middleName .
+ ?s a foaf:Person .
}
UNION {
?s bibo:prefixName ?prefix
@@ -57,6 +59,10 @@ CONSTRUCT {
?s vivo:mailingAddress ?address .
?address ?addressP ?addressO
}
+ UNION {
+ ?s vivo:mailingAddress ?address .
+ ?addressS ?addressQ ?address
+ }
UNION {
?s vivo:webpage ?webpage
}
diff --git a/productMods/WEB-INF/resources/startup_listeners.txt b/productMods/WEB-INF/resources/startup_listeners.txt
index b0cb3e8d..72b4075e 100644
--- a/productMods/WEB-INF/resources/startup_listeners.txt
+++ b/productMods/WEB-INF/resources/startup_listeners.txt
@@ -34,12 +34,11 @@ edu.cornell.mannlib.vitro.webapp.servlet.setup.UpdatePermissionSetUris
edu.cornell.mannlib.vitro.webapp.servlet.setup.FileGraphSetup
-edu.cornell.mannlib.vitro.webapp.servlet.setup.SimpleReasonerSetup
-
# Invokes process to perform updates to align with ontology changes if needed -->
-# Needs to run before submodels are attached and Pellet is set up -->
edu.cornell.mannlib.vitro.webapp.servlet.setup.UpdateKnowledgeBase
+edu.cornell.mannlib.vitro.webapp.servlet.setup.SimpleReasonerSetup
+
# Must run after JenaDataSourceSetup
edu.cornell.mannlib.vitro.webapp.servlet.setup.ThemeInfoSetup
diff --git a/productMods/WEB-INF/rich-export/address/address.sparql b/productMods/WEB-INF/rich-export/address/address.sparql
index 97fefb62..5fb4a5c6 100644
--- a/productMods/WEB-INF/rich-export/address/address.sparql
+++ b/productMods/WEB-INF/rich-export/address/address.sparql
@@ -1,8 +1,12 @@
PREFIX core:
+PREFIX obo:
+PREFIX vcard:
+
CONSTRUCT {
?address ?property ?object .
} WHERE {
- PERSON_URI core:mailingAddress ?address .
+ PERSON_URI obo:ARG_2000028 ?vcard .
+ ?vcard vcard:hasAddress ?address .
?address ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/address/locationOfAddress.sparql b/productMods/WEB-INF/rich-export/address/locationOfAddress.sparql
index 47152369..5bfba019 100644
--- a/productMods/WEB-INF/rich-export/address/locationOfAddress.sparql
+++ b/productMods/WEB-INF/rich-export/address/locationOfAddress.sparql
@@ -1,9 +1,12 @@
PREFIX core:
+PREFIX obo:
+PREFIX vcard:
CONSTRUCT {
?geographicLocation ?property ?object .
} WHERE {
- PERSON_URI core:mailingAddress ?address .
- ?address core:hasGeographicLocation ?geographicLocation .
+ PERSON_URI obo:ARG_2000028 ?vcard .
+ ?vcard vcard:hasAddress ?address .
+ ?address obo:RO_0001025 ?geographicLocation .
?geographicLocation ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/advising/advisee.sparql b/productMods/WEB-INF/rich-export/advising/advisee.sparql
index 449df609..ba5e8ab6 100644
--- a/productMods/WEB-INF/rich-export/advising/advisee.sparql
+++ b/productMods/WEB-INF/rich-export/advising/advisee.sparql
@@ -1,9 +1,16 @@
PREFIX core:
+PREFIX obo:
+PREFIX foaf:
CONSTRUCT {
- ?person ?property ?object .
+ ?advisee ?property ?object .
} WHERE {
- PERSON_URI core:advisorIn ?advisingRelationship .
- ?advisingRelationship core:advisee ?person .
- ?person ?property ?object .
+ PERSON_URI core:relatedBy ?advisingRelationship .
+ ?advisingRelationship a core:AdvisingRelationship .
+ ?advisingRelationship core:relates ?advisee .
+ ?advisee a foaf:Person .
+ ?advisee obo:RO_0000053 ?adviseeRole .
+ ?adviseeRole a core:AdviseeRole .
+ ?adviseeRole core:relatedBy ?advisingRelationship .
+ ?advisee ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/advising/adviseesDegreeAlt.sparql b/productMods/WEB-INF/rich-export/advising/adviseesDegreeAlt.sparql
index aa9225e3..83117529 100644
--- a/productMods/WEB-INF/rich-export/advising/adviseesDegreeAlt.sparql
+++ b/productMods/WEB-INF/rich-export/advising/adviseesDegreeAlt.sparql
@@ -1,11 +1,21 @@
PREFIX core:
+PREFIX obo:
+PREFIX foaf:
CONSTRUCT {
?degree ?property ?object
} WHERE {
- PERSON_URI core:advisorIn ?advisingRelationship .
- ?advisingRelationship core:advisee ?advisee .
- ?advisee core:educationalTraining ?educationalTraining .
- ?educationalTraining core:degreeEarned ?degree .
+ PERSON_URI core:relatedBy ?advisingRelationship .
+ ?advisingRelationship a core:AdvisingRelationship .
+ ?advisingRelationship core:relates ?advisee .
+ ?advisee a foaf:Person .
+ ?advisee obo:RO_0000053 ?adviseeRole .
+ ?adviseeRole a core:AdviseeRole .
+ ?adviseeRole core:relatedBy ?advisingRelationship .
+ ?advisee core:relates ?educationalTraining .
+ ?educationalTraining a core:EducationalProcess .
+ ?educationalTraining obo:RO_0002234 ?awardedDegree .
+ ?awardedDegree core:relates ?degree .
+ ?degree a core:AcademicDegree .
?degree ?property ?object
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/advising/adviseesEducationEndDate.sparql b/productMods/WEB-INF/rich-export/advising/adviseesEducationEndDate.sparql
index 48b726d0..ccc4acd4 100644
--- a/productMods/WEB-INF/rich-export/advising/adviseesEducationEndDate.sparql
+++ b/productMods/WEB-INF/rich-export/advising/adviseesEducationEndDate.sparql
@@ -1,11 +1,19 @@
PREFIX core:
+PREFIX obo:
+PREFIX foaf:
CONSTRUCT {
?dateTimeValue ?property ?object .
} WHERE {
- PERSON_URI core:advisorIn ?advisingRelationship .
- ?advisingRelationship core:advisee ?advisee .
- ?advisee core:educationalTraining ?educationalTraining .
+ PERSON_URI core:relatedBy ?advisingRelationship .
+ ?advisingRelationship a core:AdvisingRelationship .
+ ?advisingRelationship core:relates ?advisee .
+ ?advisee a foaf:Person .
+ ?advisee obo:RO_0000053 ?adviseeRole .
+ ?adviseeRole a core:AdviseeRole .
+ ?adviseeRole core:relatedBy ?advisingRelationship .
+ ?advisee core:relates ?educationalTraining .
+ ?educationalTraining a core:EducationalProcess .
?educationalTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?dateTimeValue .
?dateTimeValue ?property ?object .
diff --git a/productMods/WEB-INF/rich-export/advising/adviseesEducationalInsitituionAlt.sparql b/productMods/WEB-INF/rich-export/advising/adviseesEducationalInsitituionAlt.sparql
index d715cc60..5332ca71 100644
--- a/productMods/WEB-INF/rich-export/advising/adviseesEducationalInsitituionAlt.sparql
+++ b/productMods/WEB-INF/rich-export/advising/adviseesEducationalInsitituionAlt.sparql
@@ -1,12 +1,21 @@
PREFIX core:
+PREFIX obo:
+PREFIX foaf:
PREFIX rdfs:
CONSTRUCT {
?educationalInstitution rdfs:label ?label
} WHERE {
- PERSON_URI core:advisorIn ?advisingRelationship .
- ?advisingRelationship core:advisee ?advisee .
- ?advisee core:educationalTraining ?educationalTraining .
- ?educationalTraining core:trainingAtOrganization ?educationalInstitution .
+ PERSON_URI core:relatedBy ?advisingRelationship .
+ ?advisingRelationship a core:AdvisingRelationship .
+ ?advisingRelationship core:relates ?advisee .
+ ?advisee a foaf:Person .
+ ?advisee obo:RO_0000053 ?adviseeRole .
+ ?adviseeRole a core:AdviseeRole .
+ ?adviseeRole core:relatedBy ?advisingRelationship .
+ ?advisee core:relates ?educationalTraining .
+ ?educationalTraining a core:EducationalProcess .
+ ?educationalTraining obo:RO_0000057 ?educationalInstitution .
+ ?educationalInstitution a foaf:Organization .
?educationalInstitution rdfs:label ?label
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/advising/associatedDegree.sparql b/productMods/WEB-INF/rich-export/advising/associatedDegree.sparql
index 4ee7fe12..e3ba5b83 100644
--- a/productMods/WEB-INF/rich-export/advising/associatedDegree.sparql
+++ b/productMods/WEB-INF/rich-export/advising/associatedDegree.sparql
@@ -1,9 +1,11 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?degree ?property ?object .
} WHERE {
- PERSON_URI core:advisorIn ?advisingRelationship .
+ PERSON_URI core:relatedBy ?advisingRelationship .
+ ?advisingRelationship a core:AdvisingRelationship .
?advisingRelationship core:degreeCandidacy ?degree .
?degree ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/advising/associatedEducationalTraining.sparql b/productMods/WEB-INF/rich-export/advising/associatedEducationalTraining.sparql
index f9f59ed5..e417d74f 100644
--- a/productMods/WEB-INF/rich-export/advising/associatedEducationalTraining.sparql
+++ b/productMods/WEB-INF/rich-export/advising/associatedEducationalTraining.sparql
@@ -3,7 +3,8 @@ PREFIX core:
CONSTRUCT {
?educationalTraining ?property ?object .
} WHERE {
- PERSON_URI core:advisorIn ?advisingRelationship .
+ PERSON_URI core:relatedBy ?advisingRelationship .
+ ?advisingRelationship a core:AdvisingRelationship .
?advisingRelationship core:advisingContributionTo ?educationalTraining .
?educationalTraining ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/advising/associatedEducationalTrainingAlt.sparql b/productMods/WEB-INF/rich-export/advising/associatedEducationalTrainingAlt.sparql
index 29a31bc9..a0a60c33 100644
--- a/productMods/WEB-INF/rich-export/advising/associatedEducationalTrainingAlt.sparql
+++ b/productMods/WEB-INF/rich-export/advising/associatedEducationalTrainingAlt.sparql
@@ -1,10 +1,18 @@
PREFIX core:
+PREFIX obo:
+PREFIX foaf:
CONSTRUCT {
?educationalTraining ?property ?object .
} WHERE {
- PERSON_URI core:advisorIn ?advisingRelationship .
- ?advisingRelationship core:advisee ?advisee .
- ?advisee core:educationalTraining ?educationalTraining .
+ PERSON_URI core:relatedBy ?advisingRelationship .
+ ?advisingRelationship a core:AdvisingRelationship .
+ ?advisingRelationship core:relates ?advisee .
+ ?advisee a foaf:Person .
+ ?advisee obo:RO_0000053 ?adviseeRole .
+ ?adviseeRole a core:AdviseeRole .
+ ?adviseeRole core:relatedBy ?advisingRelationship .
+ ?advisee core:relates ?educationalTraining .
+ ?educationalTraining a core:EducationalProcess .
?educationalTraining ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/award/award.sparql b/productMods/WEB-INF/rich-export/award/award.sparql
index db731058..353e143f 100644
--- a/productMods/WEB-INF/rich-export/award/award.sparql
+++ b/productMods/WEB-INF/rich-export/award/award.sparql
@@ -3,7 +3,9 @@ PREFIX core:
CONSTRUCT {
?award ?property ?object .
} WHERE {
- PERSON_URI core:awardOrHonor ?awardReceipt .
- ?awardReceipt core:receiptOf ?award .
+ PERSON_URI core:relatedBy ?awardReceipt .
+ ?awardReceipt a core:AwardReceipt .
+ ?awardReceipt core:relates ?award .
+ ?award a core:Award .
?award ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/award/conferringOrganization.sparql b/productMods/WEB-INF/rich-export/award/conferringOrganization.sparql
index 43bc1361..2c735ba4 100644
--- a/productMods/WEB-INF/rich-export/award/conferringOrganization.sparql
+++ b/productMods/WEB-INF/rich-export/award/conferringOrganization.sparql
@@ -1,9 +1,12 @@
PREFIX core:
+PREFIX foaf:
CONSTRUCT {
?organization ?property ?object .
} WHERE {
- PERSON_URI core:awardOrHonor ?awardReceipt .
- ?awardReceipt core:awardConferredBy ?organization .
+ PERSON_URI core:relatedBy ?awardReceipt .
+ ?awardReceipt a core:AwardReceipt .
+ ?awardReceipt core:assignedBy ?organization .
+ ?organization a foaf:Organization .
?organization ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/award/sponsoringOrganization.sparql b/productMods/WEB-INF/rich-export/award/sponsoringOrganization.sparql
index 9de3f5a9..e686fa86 100644
--- a/productMods/WEB-INF/rich-export/award/sponsoringOrganization.sparql
+++ b/productMods/WEB-INF/rich-export/award/sponsoringOrganization.sparql
@@ -1,10 +1,13 @@
PREFIX core:
+PREFIX foaf:
CONSTRUCT {
?organization ?property ?object .
} WHERE {
- PERSON_URI core:awardOrHonor ?awardReceipt .
- ?awardReceipt core:receiptOf ?award .
+ PERSON_URI core:relatedBy ?awardReceipt .
+ ?awardReceipt a core:AwardReceipt .
+ ?awardReceipt core:relates ?award .
+ ?award a core:Award .
?award core:sponsoredBy ?organization .
?organization ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/credential/credential.sparql b/productMods/WEB-INF/rich-export/credential/credential.sparql
index dafb6f40..124317f0 100644
--- a/productMods/WEB-INF/rich-export/credential/credential.sparql
+++ b/productMods/WEB-INF/rich-export/credential/credential.sparql
@@ -3,7 +3,9 @@ PREFIX core:
CONSTRUCT {
?credential ?property ?object .
} WHERE {
- PERSON_URI core:hasCredential ?issuedCredential .
- ?issuedCredential core:issuanceOfCredential ?credential .
+ PERSON_URI core:relatedBy ?issuedCredential .
+ ?issuedCredential a core:IssuedCredential .
+ ?issuedCredential core:relates ?credential .
+ ?credential a core:Credential .
?credential ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/credential/credentialGoverningAuthority.sparql b/productMods/WEB-INF/rich-export/credential/credentialGoverningAuthority.sparql
index 4650bb53..79bb6cb2 100644
--- a/productMods/WEB-INF/rich-export/credential/credentialGoverningAuthority.sparql
+++ b/productMods/WEB-INF/rich-export/credential/credentialGoverningAuthority.sparql
@@ -3,8 +3,10 @@ PREFIX core:
CONSTRUCT {
?organization ?property ?object .
} WHERE {
- PERSON_URI core:hasCredential ?issuedCredential .
- ?issuedCredential core:issuanceOfCredential ?credential .
+ PERSON_URI core:relatedBy ?issuedCredential .
+ ?issuedCredential a core:IssuedCredential .
+ ?issuedCredential core:relates ?credential .
+ ?credential a core:Credential .
?credential core:hasGoverningAuthority ?organization .
?organization ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/credential/issuedCredential.sparql b/productMods/WEB-INF/rich-export/credential/issuedCredential.sparql
index 88b8f9ec..e055c153 100644
--- a/productMods/WEB-INF/rich-export/credential/issuedCredential.sparql
+++ b/productMods/WEB-INF/rich-export/credential/issuedCredential.sparql
@@ -3,6 +3,7 @@ PREFIX core:
CONSTRUCT {
?issuedCredential ?property ?object .
} WHERE {
- PERSON_URI core:hasCredential ?issuedCredential .
+ PERSON_URI core:relatedBy ?issuedCredential .
+ ?issuedCredential a core:IssuedCredential .
?issuedCredential ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/credential/issuedCredentialExpirationDate.sparql b/productMods/WEB-INF/rich-export/credential/issuedCredentialExpirationDate.sparql
index c9247cb9..d59f5119 100644
--- a/productMods/WEB-INF/rich-export/credential/issuedCredentialExpirationDate.sparql
+++ b/productMods/WEB-INF/rich-export/credential/issuedCredentialExpirationDate.sparql
@@ -4,7 +4,8 @@ CONSTRUCT {
?date ?property ?object .
?precision ?property2 ?object2 .
} WHERE {
- PERSON_URI core:hasCredential ?issuedCredential .
+ PERSON_URI core:relatedBy ?issuedCredential .
+ ?issuedCredential a core:IssuedCredential .
?issuedCredential core:expirationDate ?date .
?date ?property ?object .
?date core:dateTimePrecision ?precision .
diff --git a/productMods/WEB-INF/rich-export/credential/issuedCredentialIssueDate.sparql b/productMods/WEB-INF/rich-export/credential/issuedCredentialIssueDate.sparql
index f893aa3d..22a41b16 100644
--- a/productMods/WEB-INF/rich-export/credential/issuedCredentialIssueDate.sparql
+++ b/productMods/WEB-INF/rich-export/credential/issuedCredentialIssueDate.sparql
@@ -4,7 +4,8 @@ CONSTRUCT {
?date ?property ?object .
?precision ?property2 ?object2 .
} WHERE {
- PERSON_URI core:hasCredential ?issuedCredential .
+ PERSON_URI core:relatedBy ?issuedCredential .
+ ?issuedCredential a core:IssuedCredential .
?issuedCredential core:dateIssued ?date .
?date ?property ?object .
?date core:dateTimePrecision ?precision .
diff --git a/productMods/WEB-INF/rich-export/credential/issuedCredentialSubjectArea.sparql b/productMods/WEB-INF/rich-export/credential/issuedCredentialSubjectArea.sparql
index c76b85b6..afc265c9 100644
--- a/productMods/WEB-INF/rich-export/credential/issuedCredentialSubjectArea.sparql
+++ b/productMods/WEB-INF/rich-export/credential/issuedCredentialSubjectArea.sparql
@@ -3,7 +3,8 @@ PREFIX core:
CONSTRUCT {
?subjectArea ?property ?object .
} WHERE {
- PERSON_URI core:hasCredential ?issuedCredential .
+ PERSON_URI core:relatedBy ?issuedCredential .
+ ?issuedCredential a core:IssuedCredential .
?issuedCredential core:hasSubjectArea ?subjectArea .
?subjectArea ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/educationalTraining/educationalTraining.sparql b/productMods/WEB-INF/rich-export/educationalTraining/educationalTraining.sparql
index 68c16cc1..2b43a303 100644
--- a/productMods/WEB-INF/rich-export/educationalTraining/educationalTraining.sparql
+++ b/productMods/WEB-INF/rich-export/educationalTraining/educationalTraining.sparql
@@ -1,8 +1,10 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?educationalTraining ?property ?object .
} WHERE {
- PERSON_URI core:educationalTraining ?educationalTraining .
+ PERSON_URI obo:RO_0000056 ?educationalTraining .
+ ?educationalTraining a core:EducationalProcess .
?educationalTraining ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingDegree.sparql b/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingDegree.sparql
index 07961267..27fb7508 100644
--- a/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingDegree.sparql
+++ b/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingDegree.sparql
@@ -1,9 +1,14 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?degree ?property ?object .
} WHERE {
- PERSON_URI core:educationalTraining ?educationalTraining .
- ?educationalTraining core:degreeEarned ?degree .
+ PERSON_URI obo:RO_0000056 ?educationalTraining .
+ ?educationalTraining a core:EducationalProcess .
+ ?educationalTraining obo:RO_0002234 ?awardedDegree .
+ ?awardedDegree a core:AwardedDegree .
+ ?awardedDegree core:relates ?degree .
+ ?degree a core:AcademicDegree .
?degree ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingEndDate.sparql b/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingEndDate.sparql
index 095f8c4a..1ccdd587 100644
--- a/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingEndDate.sparql
+++ b/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingEndDate.sparql
@@ -1,10 +1,12 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?dateTimeInterval core:end ?date .
?date ?property ?object .
} WHERE {
- PERSON_URI core:educationalTraining ?educationalTraining .
+ PERSON_URI obo:RO_0000056 ?educationalTraining .
+ ?educationalTraining a core:EducationalProcess .
?educationalTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:end ?date .
?date ?property ?object .
diff --git a/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingLocation.sparql b/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingLocation.sparql
index 89b4d14a..2edff7fe 100644
--- a/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingLocation.sparql
+++ b/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingLocation.sparql
@@ -1,10 +1,15 @@
PREFIX core:
+PREFIX obo:
+PREFIX foaf:
CONSTRUCT {
?geographicLocation ?property ?object .
} WHERE {
- PERSON_URI core:educationalTraining ?educationalTraining .
- ?educationalTraining core:trainingAtOrganization ?organization .
- ?organization core:hasGeographicLocation ?geographicLocation .
+ PERSON_URI obo:RO_0000056 ?educationalTraining .
+ ?educationalTraining a core:EducationalProcess .
+ ?educationalTraining obo:RO_0000057 ?organization .
+ ?organization a foaf:Organization .
+ ?organization obo:RO_0001025 ?geographicLocation .
+ ?geographicLocation a core:GeographicLocation .
?geographicLocation ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingOrganization.sparql b/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingOrganization.sparql
index 32221ff0..188ea661 100644
--- a/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingOrganization.sparql
+++ b/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingOrganization.sparql
@@ -1,9 +1,13 @@
PREFIX core:
+PREFIX obo:
+PREFIX foaf:
CONSTRUCT {
?organization ?property ?object .
} WHERE {
- PERSON_URI core:educationalTraining ?educationalTraining .
- ?educationalTraining core:trainingAtOrganization ?organization .
+ PERSON_URI obo:RO_0000056 ?educationalTraining .
+ ?educationalTraining a core:EducationalProcess .
+ ?educationalTraining obo:RO_0000057 ?organization .
+ ?organization a foaf:Organization .
?organization ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingStartDate.sparql b/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingStartDate.sparql
index 95023460..f7ed31f4 100644
--- a/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingStartDate.sparql
+++ b/productMods/WEB-INF/rich-export/educationalTraining/educationalTrainingStartDate.sparql
@@ -1,9 +1,11 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?date ?property ?object .
} WHERE {
- PERSON_URI core:educationalTraining ?educationalTraining .
+ PERSON_URI obo:RO_0000056 ?educationalTraining .
+ ?educationalTraining a core:EducationalProcess .
?educationalTraining core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?date .
?date ?property ?object .
diff --git a/productMods/WEB-INF/rich-export/funding/grantAwardedBy.sparql b/productMods/WEB-INF/rich-export/funding/grantAwardedBy.sparql
index 52113cf4..8b03e590 100644
--- a/productMods/WEB-INF/rich-export/funding/grantAwardedBy.sparql
+++ b/productMods/WEB-INF/rich-export/funding/grantAwardedBy.sparql
@@ -1,20 +1,23 @@
PREFIX core:
-PREFIX rdf:
+PREFIX foaf:
PREFIX rdfs:
CONSTRUCT {
- ?investigatorRole core:roleContributesTo ?grant .
- ?grant core:grantAwardedBy ?awardingOrganization .
?awardingOrganization rdfs:label ?label
} WHERE {
{
- {PERSON_URI core:hasPrincipalInvestigatorRole ?investigatorRole }
+ {PERSON_URI core:relatedBy ?investigatorRole .
+ ?investigatorRole a core:PrincipalInvestigatorRole
+ }
union
- {PERSON_URI core:hasCo-PrincipalInvestigatorRole ?investigatorRole }
+ {PERSON_URI core:relatedBy ?investigatorRole .
+ ?investigatorRole a core:CoPrincipalInvestigatorRole
+ }
}
- ?investigatorRole core:roleContributesTo ?grant .
+ ?investigatorRole core:relatedBy ?grant .
?grant a core:Grant .
- ?grant core:grantAwardedBy ?awardingOrganization .
+ ?grant core:assignedBy ?awardingOrganization .
+ ?awardingOrganization a foaf:Organization .
?awardingOrganization rdfs:label ?label
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/funding/grants.sparql b/productMods/WEB-INF/rich-export/funding/grants.sparql
index a7109ecc..3d0df166 100644
--- a/productMods/WEB-INF/rich-export/funding/grants.sparql
+++ b/productMods/WEB-INF/rich-export/funding/grants.sparql
@@ -3,15 +3,19 @@ PREFIX rdf:
CONSTRUCT {
?grant ?property ?object .
- ?investigatorRole core:roleContributesTo ?grant .
+ ?investigatorRole core:relatedBy ?grant .
} WHERE {
- {
- {PERSON_URI core:hasPrincipalInvestigatorRole ?investigatorRole }
- union
- {PERSON_URI core:hasCo-PrincipalInvestigatorRole ?investigatorRole }
+ {
+ { PERSON_URI core:relatedBy ?investigatorRole .
+ ?investigatorRole a core:PrincipalInvestigatorRole
+ }
+ union
+ { PERSON_URI core:relatedBy ?investigatorRole .
+ ?investigatorRole a core:CoPrincipalInvestigatorRole
+ }
}
- ?investigatorRole core:roleContributesTo ?grant .
+ ?investigatorRole core:relatedBy ?grant .
?grant a core:Grant .
?grant ?property ?object
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/membership/memberRoleIn.sparql b/productMods/WEB-INF/rich-export/membership/memberRoleIn.sparql
index 06815f0d..165c83c8 100644
--- a/productMods/WEB-INF/rich-export/membership/memberRoleIn.sparql
+++ b/productMods/WEB-INF/rich-export/membership/memberRoleIn.sparql
@@ -1,15 +1,11 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?endeavor ?property ?object .
} WHERE {
- PERSON_URI core:hasMemberRole ?memberRole .
-
- {
- {?memberRole core:roleRealizedIn ?endeavor }
- union
- {?memberRole core:roleContributesTo ?endeavor }
- }
-
+ PERSON_URI obo:RO_0000053 ?memberRole .
+ ?memberRole a core:MemberRole .
+ ?memberRole core:roleContributesTo ?endeavor .
?endeavor ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/outreach/outreachRoleIn.sparql b/productMods/WEB-INF/rich-export/outreach/outreachRoleIn.sparql
index fd103df0..c0c6e60a 100644
--- a/productMods/WEB-INF/rich-export/outreach/outreachRoleIn.sparql
+++ b/productMods/WEB-INF/rich-export/outreach/outreachRoleIn.sparql
@@ -1,15 +1,11 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?endeavor ?property ?object .
} WHERE {
- PERSON_URI core:hasOutreachProviderRole ?outreachRole .
-
- {
- { ?memberRole core:roleRealizedIn ?endeavor }
- union
- { ?memberRole core:roleContributesTo ?endeavor }
- }
-
+ PERSON_URI obo:RO_0000053 ?outreachRole .
+ ?outreachRole a core:OutreachProviderRole .
+ ?outreachRole core:roleContributesTo ?endeavor .
?endeavor ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/patent/assignee.sparql b/productMods/WEB-INF/rich-export/patent/assignee.sparql
index 13befc4c..48c11d30 100644
--- a/productMods/WEB-INF/rich-export/patent/assignee.sparql
+++ b/productMods/WEB-INF/rich-export/patent/assignee.sparql
@@ -5,8 +5,9 @@ PREFIX bibo:
CONSTRUCT {
?assignee ?property ?object .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?patent .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?patent .
?patent rdf:type bibo:Patent .
?patent core:assignee ?assignee .
?assignee ?property ?object .
diff --git a/productMods/WEB-INF/rich-export/patent/inventors.sparql b/productMods/WEB-INF/rich-export/patent/inventors.sparql
index 3563b082..f14a7994 100644
--- a/productMods/WEB-INF/rich-export/patent/inventors.sparql
+++ b/productMods/WEB-INF/rich-export/patent/inventors.sparql
@@ -1,13 +1,16 @@
PREFIX core:
PREFIX rdf:
PREFIX bibo:
+PREFIX foaf:
CONSTRUCT {
?person ?property ?object .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?patent .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?patent .
?patent rdf:type bibo:Patent .
- ?authorship core:linkedAuthor ?person .
+ ?authorship core:relates ?person .
+ ?person a foaf:Person .
?person ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/patent/patent.sparql b/productMods/WEB-INF/rich-export/patent/patent.sparql
index 9c31f723..2cd24159 100644
--- a/productMods/WEB-INF/rich-export/patent/patent.sparql
+++ b/productMods/WEB-INF/rich-export/patent/patent.sparql
@@ -5,8 +5,9 @@ PREFIX bibo:
CONSTRUCT {
?patent ?property ?object .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?patent .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?patent .
?patent rdf:type bibo:Patent .
?patent ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/patent/patentFiledDate.sparql b/productMods/WEB-INF/rich-export/patent/patentFiledDate.sparql
index c6923acf..13dd7506 100644
--- a/productMods/WEB-INF/rich-export/patent/patentFiledDate.sparql
+++ b/productMods/WEB-INF/rich-export/patent/patentFiledDate.sparql
@@ -6,8 +6,9 @@ CONSTRUCT {
?date ?property ?object .
?precision ?property2 ?object2 .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?patent .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?patent .
?patent rdf:type bibo:Patent .
?patent core:dateFiled ?date .
?date ?property ?object .
diff --git a/productMods/WEB-INF/rich-export/patent/patentIssuedDate.sparql b/productMods/WEB-INF/rich-export/patent/patentIssuedDate.sparql
index d8d32c00..16785dc4 100644
--- a/productMods/WEB-INF/rich-export/patent/patentIssuedDate.sparql
+++ b/productMods/WEB-INF/rich-export/patent/patentIssuedDate.sparql
@@ -6,8 +6,9 @@ CONSTRUCT {
?date ?property ?object .
?precision ?property2 ?object2 .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?patent .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?patent .
?patent rdf:type bibo:Patent .
?patent core:dateIssued ?date .
?date ?property ?object .
diff --git a/productMods/WEB-INF/rich-export/position/locationForPosition.sparql b/productMods/WEB-INF/rich-export/position/locationForPosition.sparql
index 5ebd9242..e1ad43bc 100644
--- a/productMods/WEB-INF/rich-export/position/locationForPosition.sparql
+++ b/productMods/WEB-INF/rich-export/position/locationForPosition.sparql
@@ -1,12 +1,16 @@
PREFIX core:
PREFIX rdfs:
+PREFIX foaf:
+PREFIX obo:
CONSTRUCT {
?organization core:hasGeographicLocation ?geographicLocation .
?geographicLocation rdfs:label ?label .
} WHERE {
- PERSON_URI core:personInPosition ?position .
- ?position core:positionInOrganization ?organization .
- ?organization core:hasGeographicLocation ?geographicLocation .
+ PERSON_URI core:relatedBy ?position .
+ ?position a core:Position .
+ ?position core:relates ?organization .
+ ?organization a foaf:Organization .
+ ?organization obo:RO_0001025 ?geographicLocation .
?geographicLocation rdfs:label ?label .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/position/organizationForPosition.sparql b/productMods/WEB-INF/rich-export/position/organizationForPosition.sparql
index 2c771c22..dd9d5e0d 100644
--- a/productMods/WEB-INF/rich-export/position/organizationForPosition.sparql
+++ b/productMods/WEB-INF/rich-export/position/organizationForPosition.sparql
@@ -1,11 +1,14 @@
PREFIX core:
PREFIX rdfs:
+PREFIX foaf:
CONSTRUCT {
?position core:positionInOrganization ?organization .
?organization rdfs:label ?label .
} WHERE {
- PERSON_URI core:personInPosition ?position .
- ?position core:positionInOrganization ?organization .
+ PERSON_URI core:relatedBy ?position .
+ ?position a core:Position .
+ ?position core:relates ?organization .
+ ?organization a foaf:Organization .
?organization rdfs:label ?label .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/position/subOrganizationForPosition.sparql b/productMods/WEB-INF/rich-export/position/subOrganizationForPosition.sparql
index 58678586..6748f690 100644
--- a/productMods/WEB-INF/rich-export/position/subOrganizationForPosition.sparql
+++ b/productMods/WEB-INF/rich-export/position/subOrganizationForPosition.sparql
@@ -1,12 +1,16 @@
PREFIX core:
PREFIX rdfs:
+PREFIX foaf:
+PREFIX obo:
CONSTRUCT {
?organization core:hasSubOrganization ?subOrganization .
?subOrganization rdfs:label ?label .
} WHERE {
- PERSON_URI core:personInPosition ?position .
- ?position core:positionInOrganization ?organization .
- ?organization core:hasSubOrganization ?subOrganization .
+ PERSON_URI core:relatedBy ?position .
+ ?position a core:Position .
+ ?position core:relates ?organization .
+ ?organization a foaf:Organization .
+ ?organization obo:BFO_0000050 ?subOrganization .
?subOrganization rdfs:label ?label .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/position/superOrganizationForPosition.sparql b/productMods/WEB-INF/rich-export/position/superOrganizationForPosition.sparql
index 74c0b9e1..93ef97c4 100644
--- a/productMods/WEB-INF/rich-export/position/superOrganizationForPosition.sparql
+++ b/productMods/WEB-INF/rich-export/position/superOrganizationForPosition.sparql
@@ -3,8 +3,10 @@ PREFIX core:
CONSTRUCT {
?superOrganization ?property ?object .
} WHERE {
- PERSON_URI core:personInPosition ?position .
- ?position core:positionInOrganization ?organization .
- ?organization core:subOrganizationWithin ?superOrganization .
+ PERSON_URI core:relatedBy ?position .
+ ?position a core:Position .
+ ?position core:relates ?organization .
+ ?organization a foaf:Organization .
+ ?organization obo:BFO_0000051 ?superOrganization .
?superOrganization ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/presentation/meetingLocation.sparql b/productMods/WEB-INF/rich-export/presentation/meetingLocation.sparql
index cb110302..fe2ed944 100644
--- a/productMods/WEB-INF/rich-export/presentation/meetingLocation.sparql
+++ b/productMods/WEB-INF/rich-export/presentation/meetingLocation.sparql
@@ -1,16 +1,14 @@
PREFIX vivo:
PREFIX rdfs:
+PREFIX obo:
CONSTRUCT {
?location rdfs:label ?locationName .
} WHERE {
- PERSON_URI vivo:hasPresenterRole ?presenterRole .
-
- {?presenterRole vivo:roleRealizedIn ?presentation}
- union
- {?presenterRole vivo:roleIn ?presentation}
-
- ?presentation vivo:eventWithin ?containingEvent .
- ?containingEvent vivo:hasGeographicLocation ?location .
+ PERSON_URI obo:RO_0000053 ?presenterRole .
+ ?presenterRole a core:PresenterRole .
+ ?presenterRole obo:BFO_0000054 ?presentation .
+ ?presentation obo:BFO_0000050 ?containingEvent .
+ ?containingEvent obo:RO_0001025 ?location .
?location rdfs:label ?locationName .
}
diff --git a/productMods/WEB-INF/rich-export/presentation/meetingName.sparql b/productMods/WEB-INF/rich-export/presentation/meetingName.sparql
index 8ca7c752..ee70539a 100644
--- a/productMods/WEB-INF/rich-export/presentation/meetingName.sparql
+++ b/productMods/WEB-INF/rich-export/presentation/meetingName.sparql
@@ -4,12 +4,9 @@ PREFIX rdfs:
CONSTRUCT {
?containingEvent rdfs:label ?containingEventName
} WHERE {
- PERSON_URI vivo:hasPresenterRole ?presenterRole .
-
- {?presenterRole vivo:roleRealizedIn ?presentation}
- union
- {?presenterRole vivo:roleIn ?presentation}
-
- ?presentation vivo:eventWithin ?containingEvent .
+ PERSON_URI obo:RO_0000053 ?presenterRole .
+ ?presenterRole a core:PresenterRole .
+ ?presenterRole obo:BFO_0000054 ?presentation .
+ ?presentation obo:BFO_0000050 ?containingEvent .
?containingEvent rdfs:label ?containingEventName
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/presentation/presenterRoleIn.sparql b/productMods/WEB-INF/rich-export/presentation/presenterRoleIn.sparql
index c733e94c..c77c3a8a 100644
--- a/productMods/WEB-INF/rich-export/presentation/presenterRoleIn.sparql
+++ b/productMods/WEB-INF/rich-export/presentation/presenterRoleIn.sparql
@@ -5,13 +5,9 @@ CONSTRUCT {
?presentation rdfs:label ?presentationTitle .
?presenterRole rdfs:label ?roleLabel .
} WHERE {
- PERSON_URI vivo:hasPresenterRole ?presenterRole .
-
- optional {?presenterRole rdfs:label ?roleLabel}
-
- {?presenterRole vivo:roleRealizedIn ?presentation}
- union
- {?presenterRole vivo:roleIn ?presentation}
-
+ PERSON_URI obo:RO_0000053 ?presenterRole .
+ ?presenterRole a core:PresenterRole .
+ ?presenterRole rdfs:label ?roleLAbel .
+ ?presenterRole obo:BFO_0000054 ?presentation .
?presentation rdfs:label ?presentationTitle .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/publication/associatedJournal.sparql b/productMods/WEB-INF/rich-export/publication/associatedJournal.sparql
index a8daaa63..bf2582cb 100644
--- a/productMods/WEB-INF/rich-export/publication/associatedJournal.sparql
+++ b/productMods/WEB-INF/rich-export/publication/associatedJournal.sparql
@@ -1,10 +1,13 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?publicationVenue ?property ?object .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
?publication core:hasPublicationVenue ?publicationVenue .
?publicationVenue ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/publication/authors.sparql b/productMods/WEB-INF/rich-export/publication/authors.sparql
index bf4ac16a..bc1105b1 100644
--- a/productMods/WEB-INF/rich-export/publication/authors.sparql
+++ b/productMods/WEB-INF/rich-export/publication/authors.sparql
@@ -1,13 +1,19 @@
PREFIX core:
+PREFIX obo:
+PREFIX foaf:
CONSTRUCT {
?coAuthorship ?property1 ?object1 .
?person ?property2 ?object2 .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
- ?publication core:informationResourceInAuthorship ?coAuthorship .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
+ ?publication core:relatedBy ?coAuthorship .
+ ?coAuthorship a core:Authorship .
?coAuthorship ?property1 ?object1 .
- ?coAuthorship core:linkedAuthor ?person .
+ ?coAuthorship core:relates ?person .
+ ?person a foaf:Person .
?person ?property2 ?object2 .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/publication/presentedAtEvent.sparql b/productMods/WEB-INF/rich-export/publication/presentedAtEvent.sparql
index c366de39..a7e4bb34 100644
--- a/productMods/WEB-INF/rich-export/publication/presentedAtEvent.sparql
+++ b/productMods/WEB-INF/rich-export/publication/presentedAtEvent.sparql
@@ -1,11 +1,15 @@
PREFIX core:
+PREFIX obo:
+PREFIX foaf:
PREFIX bibo:
CONSTRUCT {
?event ?property ?object .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
?publication bibo:presentedAt ?event .
?event ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/publication/presentedAtEventEndDate.sparql b/productMods/WEB-INF/rich-export/publication/presentedAtEventEndDate.sparql
index c0fd3853..6e3cfd94 100644
--- a/productMods/WEB-INF/rich-export/publication/presentedAtEventEndDate.sparql
+++ b/productMods/WEB-INF/rich-export/publication/presentedAtEventEndDate.sparql
@@ -1,12 +1,15 @@
PREFIX core:
-PREFIX bibo:
+PREFIX obo:
+PREFIX foaf: PREFIX bibo:
CONSTRUCT {
?endDate ?property ?object .
?precision ?property2 ?object2 .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
?publication bibo:presentedAt ?event .
?event ?property ?object .
?event core:dateTimeInterval ?dateTimeInterval .
diff --git a/productMods/WEB-INF/rich-export/publication/presentedAtEventLocation.sparql b/productMods/WEB-INF/rich-export/publication/presentedAtEventLocation.sparql
index 80560c0f..ebddb52e 100644
--- a/productMods/WEB-INF/rich-export/publication/presentedAtEventLocation.sparql
+++ b/productMods/WEB-INF/rich-export/publication/presentedAtEventLocation.sparql
@@ -1,13 +1,16 @@
PREFIX core:
PREFIX bibo:
PREFIX rdfs:
+PREFIX obo:
CONSTRUCT {
?location rdfs:label ?locationName .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
?publication bibo:presentedAt ?event .
- ?event core:hasGeographicLocation ?location .
+ ?event obo:RO_0001025 ?location .
?location rdfs:label ?locationName .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/publication/presentedAtEventStartDate.sparql b/productMods/WEB-INF/rich-export/publication/presentedAtEventStartDate.sparql
index 3803a72f..3a85c078 100644
--- a/productMods/WEB-INF/rich-export/publication/presentedAtEventStartDate.sparql
+++ b/productMods/WEB-INF/rich-export/publication/presentedAtEventStartDate.sparql
@@ -1,12 +1,15 @@
PREFIX core:
PREFIX bibo:
+PREFIX obo:
CONSTRUCT {
?startDate ?property ?object .
?precision ?property2 ?object2 .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
?publication bibo:presentedAt ?event .
?event ?property ?object .
?event core:dateTimeInterval ?dateTimeInterval .
diff --git a/productMods/WEB-INF/rich-export/publication/publication.sparql b/productMods/WEB-INF/rich-export/publication/publication.sparql
index 96e4344d..1ab4318a 100644
--- a/productMods/WEB-INF/rich-export/publication/publication.sparql
+++ b/productMods/WEB-INF/rich-export/publication/publication.sparql
@@ -1,9 +1,12 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?publication ?property ?object .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
?publication ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/publication/publicationDate.sparql b/productMods/WEB-INF/rich-export/publication/publicationDate.sparql
index 8661c16b..0f2fb63d 100644
--- a/productMods/WEB-INF/rich-export/publication/publicationDate.sparql
+++ b/productMods/WEB-INF/rich-export/publication/publicationDate.sparql
@@ -1,11 +1,14 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?date ?property ?object .
?precision ?property2 ?object2 .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
?publication ?dateTimeValue ?date .
?date ?property ?object .
?date core:dateTimePrecision ?precision .
diff --git a/productMods/WEB-INF/rich-export/publication/publicationPartOfInfoResource.sparql b/productMods/WEB-INF/rich-export/publication/publicationPartOfInfoResource.sparql
index b92459a3..f37a43dc 100644
--- a/productMods/WEB-INF/rich-export/publication/publicationPartOfInfoResource.sparql
+++ b/productMods/WEB-INF/rich-export/publication/publicationPartOfInfoResource.sparql
@@ -1,10 +1,13 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?informationResource ?property ?object .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
- ?publication core:partOf ?informationResource .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
+ ?publication obo:BFO_0000050 ?informationResource .
?informationResource ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/publication/publicationReproducedIn.sparql b/productMods/WEB-INF/rich-export/publication/publicationReproducedIn.sparql
index 376e9f97..3b751a9e 100644
--- a/productMods/WEB-INF/rich-export/publication/publicationReproducedIn.sparql
+++ b/productMods/WEB-INF/rich-export/publication/publicationReproducedIn.sparql
@@ -1,11 +1,14 @@
PREFIX core:
PREFIX bibo:
+PREFIX obo:
CONSTRUCT {
?informationResource ?property ?object .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
?publication bibo:reproducedIn ?informationResource .
?informationResource ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/publication/publicationStatus.sparql b/productMods/WEB-INF/rich-export/publication/publicationStatus.sparql
index 7c8f4614..e1cb2f25 100644
--- a/productMods/WEB-INF/rich-export/publication/publicationStatus.sparql
+++ b/productMods/WEB-INF/rich-export/publication/publicationStatus.sparql
@@ -1,11 +1,14 @@
PREFIX core:
PREFIX bibo:
+PREFIX obo:
CONSTRUCT {
?publicationStatus ?property ?object .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
?publication bibo:status ?publicationStatus .
?publicationStatus ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/publication/publicationURL.sparql b/productMods/WEB-INF/rich-export/publication/publicationURL.sparql
index 940f6062..47f0de80 100644
--- a/productMods/WEB-INF/rich-export/publication/publicationURL.sparql
+++ b/productMods/WEB-INF/rich-export/publication/publicationURL.sparql
@@ -1,10 +1,15 @@
PREFIX core:
+PREFIX obo:
+PREFIX vcard:
CONSTRUCT {
?urllink ?property ?object .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
- ?publication core:webpage ?urllink .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
+ ?publication obo:ARG_2000028 ?vcard .
+ ?vcard vcard:hasURL ?urllink .
?urllink ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/publication/publisher_variant1.sparql b/productMods/WEB-INF/rich-export/publication/publisher_variant1.sparql
index f41cc890..4ae35fd0 100644
--- a/productMods/WEB-INF/rich-export/publication/publisher_variant1.sparql
+++ b/productMods/WEB-INF/rich-export/publication/publisher_variant1.sparql
@@ -1,10 +1,13 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?publisher ?property ?object .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
?publication core:hasPublicationVenue ?publicationVenue .
?publicationVenue core:publisher ?publisher .
?publisher ?property ?object .
diff --git a/productMods/WEB-INF/rich-export/publication/publisher_variant2.sparql b/productMods/WEB-INF/rich-export/publication/publisher_variant2.sparql
index 88d56bea..6d552625 100644
--- a/productMods/WEB-INF/rich-export/publication/publisher_variant2.sparql
+++ b/productMods/WEB-INF/rich-export/publication/publisher_variant2.sparql
@@ -1,10 +1,13 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?publisher ?property ?object .
} WHERE {
- PERSON_URI core:authorInAuthorship ?authorship .
- ?authorship core:linkedInformationResource ?publication .
+ PERSON_URI core:relatedBy ?authorship .
+ ?authorship a core:Authorship .
+ ?authorship core:relates ?publication .
+ ?publication a obo:IAO_0000030 .
?publication core:publisher ?publisher .
?publisher ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/WEB-INF/rich-export/teaching/teacherRoleIn.sparql b/productMods/WEB-INF/rich-export/teaching/teacherRoleIn.sparql
index a5b55771..76ec8cdd 100644
--- a/productMods/WEB-INF/rich-export/teaching/teacherRoleIn.sparql
+++ b/productMods/WEB-INF/rich-export/teaching/teacherRoleIn.sparql
@@ -1,9 +1,11 @@
PREFIX core:
+PREFIX obo:
CONSTRUCT {
?course ?property ?object .
} WHERE {
- PERSON_URI core:hasTeacherRole ?teacherRole .
- ?teacherRole core:roleRealizedIn ?course .
+ PERSON_URI obo:RO_0000053 ?teacherRole .
+ ?teacherRole a core:TeacherRole .
+ ?teacherRole obo:BFO_0000054 ?course .
?course ?property ?object .
}
\ No newline at end of file
diff --git a/productMods/config/listViewConfig-adviseeIn.xml b/productMods/config/listViewConfig-adviseeIn.xml
index 72b07c2c..3a38a1f1 100644
--- a/productMods/config/listViewConfig-adviseeIn.xml
+++ b/productMods/config/listViewConfig-adviseeIn.xml
@@ -32,26 +32,26 @@
OPTIONAL { ?advisingRel rdfs:label ?advisingRelLabel }
OPTIONAL { ?advisingRel core:relates ?advisor .
?advisor a foaf:Person .
- OPTIONAL { ?advisor rdfs:label ?advisorLabel }
+ ?advisor rdfs:label ?advisorLabel
}
OPTIONAL { ?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel .
- OPTIONAL { ?degree core:abbreviation ?degreeAbbr }
+ }
+ OPTIONAL { ?advisingRel core:degreeCandidacy ?degree .
+ ?degree core:abbreviation ?degreeAbbr .
}
OPTIONAL { ?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship
}
- OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
+ OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
}
- OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
+ OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
}
} ORDER BY ?subclass DESC(?dateTimeEnd)
diff --git a/productMods/config/listViewConfig-advisorIn.xml b/productMods/config/listViewConfig-advisorIn.xml
index 0182d6ea..25146b7a 100644
--- a/productMods/config/listViewConfig-advisorIn.xml
+++ b/productMods/config/listViewConfig-advisorIn.xml
@@ -32,26 +32,26 @@
OPTIONAL { ?advisingRel rdfs:label ?advisingRelLabel }
OPTIONAL { ?advisingRel core:relates ?advisee .
?advisee a foaf:Person .
- OPTIONAL { ?advisee rdfs:label ?adviseeLabel }
+ ?advisee rdfs:label ?adviseeLabel
}
OPTIONAL { ?advisingRel core:degreeCandidacy ?degree .
?degree rdfs:label ?degreeLabel .
- OPTIONAL { ?degree core:abbreviation ?degreeAbbr }
+ }
+ OPTIONAL { ?advisingRel core:degreeCandidacy ?degree .
+ ?degree core:abbreviation ?degreeAbbr
}
OPTIONAL { ?advisingRel vitro:mostSpecificType ?subclass .
?subclass rdfs:subClassOf core:AdvisingRelationship
}
- OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
+ OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
}
- OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
+ OPTIONAL { ?advisingRel core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
}
} ORDER BY ?subclass DESC(?dateTimeEnd)
diff --git a/productMods/config/listViewConfig-authorInAuthorship.xml b/productMods/config/listViewConfig-authorInAuthorship.xml
index 755ceff4..ecdb73af 100644
--- a/productMods/config/listViewConfig-authorInAuthorship.xml
+++ b/productMods/config/listViewConfig-authorInAuthorship.xml
@@ -47,7 +47,7 @@
?editorship core:relates ?editorObj .
?editorObj rdfs:label ?editor
}
- OPTIONAL { ?infoResource core:partOf ?partOfObj .
+ OPTIONAL { ?infoResource <http://purl.obolibrary.org/obo/BFO_0000050> ?partOfObj .
?partOfObj rdfs:label ?partOf
}
OPTIONAL { ?infoResource vitro:mostSpecificType ?subclass }
@@ -152,7 +152,7 @@
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
?editorObj a foaf:Person .
- ?infoResource core:partOf ?partOfObj .
+ ?infoResource <http://purl.obolibrary.org/obo/BFO_0000050> ?partOfObj .
?appearsInObj rdfs:label ?appearsIn .
?publisherObj rdfs:label ?publisher .
?editorObj rdfs:label ?editor .
@@ -199,13 +199,14 @@
?infoResource core:relatedBy ?editorship .
?editorship a core:Editorship .
?editorship core:relates ?editorObj .
+ ?editorObj a foaf:Person .
?editorObj rdfs:label ?editor
} UNION {
?subject ?property ?authorship .
?authorship a core:Authorship .
?authorship core:relates ?infoResource .
?infoResource a <http://purl.obolibrary.org/obo/IAO_0000030> .
- ?infoResource core:partOf ?partOfObj .
+ ?infoResource <http://purl.obolibrary.org/obo/BFO_0000050> ?partOfObj .
?partOfObj rdfs:label ?partOf
}
}
diff --git a/productMods/config/listViewConfig-awardOrHonor.xml b/productMods/config/listViewConfig-awardOrHonor.xml
index 149df272..4dbb907d 100644
--- a/productMods/config/listViewConfig-awardOrHonor.xml
+++ b/productMods/config/listViewConfig-awardOrHonor.xml
@@ -35,18 +35,16 @@
OPTIONAL { ?awardReceipt core:assignedBy ?assignedBy .
?assignedBy rdfs:label ?assignedByLabel
}
- OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
+ OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
}
- OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
+ OPTIONAL { ?awardReceipt core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
}
- OPTIONAL { ?awardReceipt core:dateTimeValue ?dateTimeValue
- OPTIONAL { ?dateTimeValue core:dateTime ?dateTime }
+ OPTIONAL { ?awardReceipt core:dateTimeValue ?dateTimeValue .
+ ?dateTimeValue core:dateTime ?dateTime
}
} ORDER BY DESC(?dateTime) DESC(?dateTimeEnd)
diff --git a/productMods/config/listViewConfig-educationalTraining.xml b/productMods/config/listViewConfig-educationalTraining.xml
index 863b44bc..97e70fca 100644
--- a/productMods/config/listViewConfig-educationalTraining.xml
+++ b/productMods/config/listViewConfig-educationalTraining.xml
@@ -23,10 +23,14 @@
OPTIONAL { ?edTraining vitro:mostSpecificType ?subclass . }
OPTIONAL { ?edTraining <http://purl.obolibrary.org/obo/RO_0002234> ?awardedDegree .
?awardedDegree core:relates ?degree .
- ?degree a core:AcademicDegree
- OPTIONAL { ?degree rdfs:label ?degreeName }
- OPTIONAL { ?degree core:abbreviation ?degreeAbbr }
- }
+ ?degree a core:AcademicDegree .
+ ?degree rdfs:label ?degreeName
+ }
+ OPTIONAL { ?edTraining <http://purl.obolibrary.org/obo/RO_0002234> ?awardedDegree .
+ ?awardedDegree core:relates ?degree .
+ ?degree a core:AcademicDegree .
+ ?degree core:abbreviation ?degreeAbbr
+ }
OPTIONAL { ?edTraining <http://purl.obolibrary.org/obo/RO_0000057> ?org .
?org a foaf:Organization .
?org rdfs:label ?orgName
@@ -34,13 +38,13 @@
OPTIONAL { ?edTraining core:majorField ?majorField }
OPTIONAL { ?edTraining core:departmentOrSchool ?deptOrSchool }
OPTIONAL { ?edTraining core:supplementalInformation ?info }
- OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
- OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
+ OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
}
} ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart)
diff --git a/productMods/config/listViewConfig-grantAdministeredBy.xml b/productMods/config/listViewConfig-grantAdministeredBy.xml
new file mode 100644
index 00000000..d9a6c58d
--- /dev/null
+++ b/productMods/config/listViewConfig-grantAdministeredBy.xml
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+ PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX obo: <http://purl.obolibrary.org/obo/>
+
+ SELECT DISTINCT ?administratorRole
+ ?organization
+ ?organizationLabel
+
+ WHERE {
+ ?subject ?property ?administratorRole .
+ ?administratorRole a core:AdministratorRole .
+ OPTIONAL { ?administratorRole obo:RO_0000052 ?organization .
+ ?organization a foaf:Organization .
+ ?organization obo:RO_0000053 ?administratorRole .
+ ?organization rdfs:label ?organizationLabel .
+ }
+ } ORDER BY ?organizationLabel
+
+
+
+ PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX obo: <http://purl.obolibrary.org/obo/>
+
+ CONSTRUCT {
+ ?subject ?property ?administratorRole .
+ ?administratorRole a core:AdministratorRole .
+ ?administratorRole obo:RO_0000052 ?organization .
+ ?organization a foaf:Organization .
+ ?organization obo:RO_0000053 ?administratorRole .
+ ?organization rdfs:label ?organizationLabel .
+ } WHERE {
+ {
+ ?subject ?property ?administratorRole .
+ ?administratorRole a core:AdministratorRole .
+ } UNION {
+ ?subject ?property ?administratorRole .
+ ?administratorRole a core:AdministratorRole .
+ ?administratorRole obo:RO_0000052 ?organization .
+ ?organization a foaf:Organization .
+ ?organization obo:RO_0000053 ?administratorRole .
+ ?organization rdfs:label ?organizationLabel .
+ }
+ }
+
+
+ propStatement-grantAdministeredBy.ftl
+
diff --git a/productMods/config/listViewConfig-hasClinicalActivity.xml b/productMods/config/listViewConfig-hasClinicalActivity.xml
new file mode 100644
index 00000000..4ae2e97a
--- /dev/null
+++ b/productMods/config/listViewConfig-hasClinicalActivity.xml
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+ PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ SELECT DISTINCT ?subclass
+ # send the property to the template, since this view supports multiple role properties
+ ?property
+ ?role
+ ?roleLabel
+ ?activity ?activityName
+ ?activityLabel
+ ?dateTimeStart ?dateTimeEnd
+ ?hideThis
+ ?objectType
+ WHERE {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity rdfs:label ?activityLabel
+
+
+ ?activity vitro:mostSpecificType ?subclass
+
+ }
+ OPTIONAL { ?role core:roleContributesTo ?activity .
+ ?activity rdfs:label ?activityLabel
+
+
+ ?activity vitro:mostSpecificType ?subclass
+
+ }
+ OPTIONAL { ?role rdfs:label ?roleLabel }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ }
+ } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role core:roleContributesTo ?activity .
+ ?activity vitro:mostSpecificType ?subclass .
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role core:roleContributesTo ?activity .
+ ?activity vitro:mostSpecificType ?subclass
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity vitro:mostSpecificType ?subclass .
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity vitro:mostSpecificType ?subclass
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role ?roleProperty ?roleValue .
+ ?activity rdfs:label ?activityName
+ } WHERE {
+ {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role ?roleProperty ?roleValue
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role core:relates ?activity .
+ ?activity rdfs:label ?activityName
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity rdfs:label ?activityName
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role core:roleContributesTo ?activity .
+ ?activity rdfs:label ?activityName
+ }
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:ClinicalRole .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ }
+
+
+ propStatement-hasRole.ftl
+
diff --git a/productMods/config/listViewConfig-hasCoPrincipalInvestigatorRole.xml b/productMods/config/listViewConfig-hasCoPrincipalInvestigatorRole.xml
new file mode 100644
index 00000000..04b433fd
--- /dev/null
+++ b/productMods/config/listViewConfig-hasCoPrincipalInvestigatorRole.xml
@@ -0,0 +1,195 @@
+
+
+
+
+
+
+
+ PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ SELECT DISTINCT
+ ?role
+ ?activity ?activityName
+ ?activityLabel
+ ?awardedBy
+ ?adminedBy
+ ?awardedByLabel
+ ?adminedByLabel
+ ?dateTimeStartRole ?dateTimeEndRole
+ ?dateTimeStartGrant ?dateTimeEndGrant
+ ?hideThis
+ WHERE {
+
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity rdfs:label ?activityLabel .
+ LET (?activityName := afn:localname(?activity))
+ }
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:assignedBy ?awardedBy .
+ ?awardedBy rdfs:label ?awardedByLabel
+ }
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:relates ?adminedByRole .
+ ?adminedByRole <http://purl.obolibrary.org/obo/RO_0000052> ?adminedBy .
+ ?adminedBy rdfs:label ?adminedByLabel
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
+ ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
+ ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
+ }
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
+ ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
+ }
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
+ ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
+ }
+ OPTIONAL { ?role core:hideFromDisplay ?hideThis }
+ } ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?role ?roleProperty ?roleValue .
+ ?activity rdfs:label ?activityLabel .
+ ?activity core:assignedBy ?awardedBy .
+ ?awardedBy rdfs:label ?awardedByLabel .
+ ?activity core:relates ?adminedByRole .
+ ?adminedByRole <http://purl.obolibrary.org/obo/RO_0000052> ?adminedBy .
+ ?adminedBy rdfs:label ?adminedByLabel
+ } WHERE {
+ {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role ?roleProperty ?roleValue
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity rdfs:label ?activityLabel
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:assignedBy ?awardedBy .
+ ?awardedBy a foaf:Organization .
+ ?awardedBy rdfs:label ?awardedByLabel
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:relates ?adminedByRole .
+ ?adminedByRole a core:AdminsitratorRole.
+ ?adminedByRole <http://purl.obolibrary.org/obo/RO_0000052> ?adminedBy .
+ ?adminedBy a foaf:Organization .
+ ?adminedBy rdfs:label ?adminedByLabel
+ }
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
+ ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
+ ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
+ ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
+ ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
+ }
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
+ ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
+ ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
+ ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:CoPrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
+ ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
+ }
+
+
+ propStatement-hasInvestigatorRole.ftl
+
diff --git a/productMods/config/listViewConfig-hasEditorRole.xml b/productMods/config/listViewConfig-hasEditorRole.xml
index 0d2b7854..4e868cf7 100644
--- a/productMods/config/listViewConfig-hasEditorRole.xml
+++ b/productMods/config/listViewConfig-hasEditorRole.xml
@@ -22,18 +22,19 @@
?subject ?property ?role
OPTIONAL { ?role core:roleContributesTo ?activity .
- ?activity vitro:mostSpecificType ?subclass
- OPTIONAL { ?activity rdfs:label ?activityName }
- OPTIONAL { ?subclass rdfs:label ?subclassLabel }
- }
-
- OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
- OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
+ ?activity vitro:mostSpecificType ?subclass .
+ ?subclass rdfs:label ?subclassLabel
+ }
+ OPTIONAL { ?role core:roleContributesTo ?activity .
+ ?activity rdfs:label ?activityName
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
}
} ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityName
diff --git a/productMods/config/listViewConfig-hasInvestigatorRole.xml b/productMods/config/listViewConfig-hasInvestigatorRole.xml
index 98344214..baecbdc1 100644
--- a/productMods/config/listViewConfig-hasInvestigatorRole.xml
+++ b/productMods/config/listViewConfig-hasInvestigatorRole.xml
@@ -24,145 +24,95 @@
WHERE {
?subject ?property ?role .
- ?role a ?objectType .
+ ?role a core:InvestigatorRole .
?role vitro:mostSpecificType ?subclass
- OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity rdfs:label ?activityLabel .
LET (?activityName := afn:localname(?activity))
- OPTIONAL { ?activity rdfs:label ?activityLabel }
- }
- OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity
- LET (?activityName := afn:localname(?activity))
- OPTIONAL { ?activity rdfs:label ?activityLabel }
}
- OPTIONAL { ?activity core:grantAwardedBy ?awardedBy .
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel
}
- OPTIONAL { ?activity core:administeredBy ?adminedBy .
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:relates ?adminedByRole .
+ ?adminedByRole <http://purl.obolibrary.org/obo/RO_0000052> ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel
}
- OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole
- OPTIONAL { ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
- ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
- }
- OPTIONAL { ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
- ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
- }
- }
- OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?grant .
- ?grant core:dateTimeInterval ?dateTimeIntervalGrant
- OPTIONAL { ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
- ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
- }
- OPTIONAL { ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
- ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
- }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
+ ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
+ ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
+ }
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
+ ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
+ }
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
+ ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
}
OPTIONAL { ?role core:hideFromDisplay ?hideThis }
- FILTER ( bound(?activity) && ?subclass = ?objectType)
+ FILTER ( ?subclass = core:InvestigatorRole)
} ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
-
-
- PREFIX core: <http://vivoweb.org/ontology/core#>
- PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
- PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
-
- CONSTRUCT {
- ?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
- ?activity rdfs:label ?activityLabel
- } WHERE {
- {
- ?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity
- } UNION
- {
- ?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
- ?activity rdfs:label ?activityLabel
- }
- }
-
-
-
- PREFIX core: <http://vivoweb.org/ontology/core#>
- PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
- PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
-
- CONSTRUCT {
- ?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
- ?activity rdfs:label ?activityLabel
- } WHERE {
- {
- ?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity
- } UNION
- {
- ?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
- ?activity rdfs:label ?activityLabel
- }
- }
-
-
+
PREFIX core: <http://vivoweb.org/ontology/core#>
- PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX foaf: <http://xmlns.com/foaf/0.1/>
CONSTRUCT {
?subject ?property ?role .
- ?role a ?objectType .
+ ?role a core:InvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
?role ?roleProperty ?roleValue .
- ?activity rdfs:label ?activityName .
- ?activity core:grantAwardedBy ?awardedBy .
+ ?activity rdfs:label ?activityLabel .
+ ?activity core:assignedBy ?awardedBy .
?awardedBy rdfs:label ?awardedByLabel .
- ?activity core:administeredBy ?adminedBy .
+ ?activity core:relates ?adminedByRole .
+ ?adminedByRole <http://purl.obolibrary.org/obo/RO_0000052> ?adminedBy .
?adminedBy rdfs:label ?adminedByLabel
} WHERE {
{
- ?subject ?property ?role
+ ?subject ?property ?role .
+ ?role a core:InvestigatorRole .
} UNION {
?subject ?property ?role .
- ?role a ?objectType .
+ ?role a core:InvestigatorRole .
?role ?roleProperty ?roleValue
} UNION {
?subject ?property ?role .
- ?role a ?objectType .
+ ?role a core:InvestigatorRole .
?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
- ?activity rdfs:label ?activityName
+ ?activity a core:Grant .
+ ?activity rdfs:label ?activityLabel
} UNION {
?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
- ?activity rdfs:label ?activityName
- } UNION {
- ?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
- ?activity core:grantAwardedBy ?awardedBy
- } UNION {
- ?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
- ?activity core:grantAwardedBy ?awardedBy .
+ ?role a core:InvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:assignedBy ?awardedBy .
+ ?awardedBy a foaf:Organization .
?awardedBy rdfs:label ?awardedByLabel
} UNION {
?subject ?property ?role .
- ?role a ?objectType .
+ ?role a core:InvestigatorRole .
?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
- ?activity core:administeredBy ?adminedBy
- } UNION {
- ?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
- ?activity core:administeredBy ?adminedBy .
+ ?activity a core:Grant .
+ ?activity core:relates ?adminedByRole .
+ ?adminedByRole a core:AdminsitratorRole.
+ ?adminedByRole <http://purl.obolibrary.org/obo/RO_0000052> ?adminedBy .
+ ?adminedBy a foaf:Organization .
?adminedBy rdfs:label ?adminedByLabel
}
}
@@ -172,13 +122,13 @@
PREFIX core: <http://vivoweb.org/ontology/core#>
CONSTRUCT {
?subject ?property ?role .
- ?role a ?objectType .
+ ?role a core:InvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
} WHERE {
?subject ?property ?role .
- ?role a ?objectType .
+ ?role a core:InvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
@@ -189,13 +139,13 @@
PREFIX core: <http://vivoweb.org/ontology/core#>
CONSTRUCT {
?subject ?property ?role .
- ?role a ?objectType .
+ ?role a core:InvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
} WHERE {
?subject ?property ?role .
- ?role a ?objectType .
+ ?role a core:InvestigatorRole .
?role core:dateTimeInterval ?dateTimeIntervalRole .
?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
@@ -205,16 +155,18 @@
PREFIX core: <http://vivoweb.org/ontology/core#>
CONSTRUCT {
?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://vivoweb.org/ontology/core#relatedBy> ?grant .
- ?grant core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?role a core:InvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
} WHERE {
?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://vivoweb.org/ontology/core#relatedBy> ?grant .
- ?grant core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?role a core:InvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
}
@@ -224,16 +176,18 @@
PREFIX core: <http://vivoweb.org/ontology/core#>
CONSTRUCT {
?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://vivoweb.org/ontology/core#relatedBy> ?grant .
- ?grant core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?role a core:InvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
} WHERE {
?subject ?property ?role .
- ?role a ?objectType .
- ?role <http://vivoweb.org/ontology/core#relatedBy> ?grant .
- ?grant core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?role a core:InvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
}
diff --git a/productMods/config/listViewConfig-hasPresenterRole.xml b/productMods/config/listViewConfig-hasPresenterRole.xml
index a6c58288..88be9a91 100644
--- a/productMods/config/listViewConfig-hasPresenterRole.xml
+++ b/productMods/config/listViewConfig-hasPresenterRole.xml
@@ -30,68 +30,50 @@
OPTIONAL { ?role rdfs:label ?roleLabel }
- OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
+ ?presentation rdfs:label ?presentationLabel .
LET (?presentationName := afn:localname(?presentation))
-
- OPTIONAL { ?presentation rdfs:label ?presentationLabel }
-
- OPTIONAL { ?conference a bibo:Conference .
- OPTIONAL { ?conference rdfs:label ?conferenceLabel }
-
- {
- ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?conference
- } UNION {
- ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation
- }
- }
- OPTIONAL {
- {
- ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop .
- ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?conference
- } UNION {
- ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
- ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop
- }
- OPTIONAL { ?conference rdfs:label ?conferenceLabel }
- }
-
-
- OPTIONAL { ?series a vivo:EventSeries .
- OPTIONAL { ?series rdfs:label ?seriesLabel }
-
- {
- ?presentation vivo:inEventWithin ?series
- } UNION {
- ?series vivo:seriesForEvent ?presentation
- }
- }
- OPTIONAL {
- {
- ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop .
- ?workshop vivo:inEventSeries ?series
- } UNION {
- ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
- ?series vivo:seriesForEvent ?workshop
- }
- OPTIONAL { ?series rdfs:label ?seriesLabel }
- }
-
-
- ?presentation vitro:mostSpecificType ?subclass .
-
- {
- ?subclass rdfs:subClassOf vivo:Presentation
- } UNION {
- ?subclass owl:equivalentClass vivo:Presentation
- }
-
-
- }
-
- OPTIONAL { ?role vivo:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval vivo:start ?dateTimeStartValue .
- ?dateTimeStartValue vivo:dateTime ?dateTime
- }
+ }
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
+ ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?conference .
+ ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
+ ?conference a bibo:Conference .
+ ?conference rdfs:label ?conferenceLabel
+ }
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
+ ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop .
+ ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
+ ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?conference .
+ ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop .
+ ?conference rdfs:label ?conferenceLabel
+ }
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
+ ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?series .
+ ?series <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
+ ?series rdfs:label ?seriesLabel
+ }
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
+ ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop .
+ ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
+ ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?series .
+ ?series <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop .
+ ?series rdfs:label ?seriesLabel
+ }
+
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
+ ?presentation vitro:mostSpecificType ?subclass .
+ }
+
+
+ OPTIONAL { ?role vivo:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval vivo:start ?dateTimeStartValue .
+ ?dateTimeStartValue vivo:dateTime ?dateTime
}
@@ -101,44 +83,18 @@
} ORDER BY ?subclass DESC(?dateTime) ?presentationLabel ?presentationName
-
- PREFIX vivo: <http://vivoweb.org/ontology/core#>
- PREFIX owl: <http://www.w3.org/2002/07/owl#>
- PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
- PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
-
- CONSTRUCT {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?presentation vitro:mostSpecificType ?subclass .
- ?subclass rdfs:subClassOf vivo:Presentation .
- ?subclass owl:equivalentClass vivo:Presentation .
- } WHERE {
- {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?presentation vitro:mostSpecificType ?subclass .
- ?subclass rdfs:subClassOf vivo:Presentation
- } UNION {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?presentation vitro:mostSpecificType ?subclass .
- ?subclass owl:equivalentClass vivo:Presentation
- }
- }
-
-
PREFIX vivo: <http://vivoweb.org/ontology/core#>
- PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
- ?role ?roleProperty ?roleValue .
- ?presentation rdfs:label ?presentationLabel
+ ?role rdfs:label ?roleLabel .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
+ ?presentation rdfs:label ?presentationLabel .
+ ?presentation vitro:mostSpecificType ?subclass .
} WHERE {
{
?subject ?property ?role .
@@ -146,12 +102,19 @@
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
- ?role ?roleProperty ?roleValue
+ ?role rdfs:label ?roleLabel .
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
?presentation rdfs:label ?presentationLabel
+ } UNION {
+ ?subject ?property ?role .
+ ?role a vivo:PresenterRole .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
+ ?presentation vitro:mostSpecificType ?subclass .
}
}
@@ -164,37 +127,25 @@
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
- ?conference a bibo:Conference .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?conference .
+ ?conference a bibo:Conference .
?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
?conference rdfs:label ?conferenceLabel
} WHERE {
{
?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?conference a bibo:Conference .
- ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?conference
+ ?role a vivo:PresenterRole .
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?conference a bibo:Conference .
+ ?presentation a vivo:Presentation .
?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?conference .
- ?conference rdfs:label ?conferenceLabel
- } UNION {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?conference a bibo:Conference .
- ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation
- } UNION {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?conference a bibo:Conference .
?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
+ ?conference a bibo:Conference .
?conference rdfs:label ?conferenceLabel
}
}
@@ -208,43 +159,32 @@
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
+ ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop .
+ ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
+ ?workshop a bibo:Workshop .
?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?conference .
?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop .
?conference a bibo:Conference .
- ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop .
- ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
?conference rdfs:label ?conferenceLabel
} WHERE {
{
?subject ?property ?role .
?role a vivo:PresenterRole .
+ } UNION {
+ ?subject ?property ?role .
+ ?role a vivo:PresenterRole .
?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?conference a bibo:Conference .
+ ?presentation a vivo:Presentation .
?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop .
- ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?conference
- } UNION {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
?conference a bibo:Conference .
- ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop .
- ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?conference .
- ?conference rdfs:label ?conferenceLabel
- } UNION {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?conference a bibo:Conference .
- ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop .
- ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation
- } UNION {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?conference a bibo:Conference .
- ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop .
?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
- ?conference rdfs:label ?conferenceLabel
+ ?workshop a bibo:Workshop .
+ ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?conference .
+ ?conference <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop .
+ ?conference a bibo:Conference .
+ ?conference rdfs:label ?conferenceLabel
}
}
@@ -257,37 +197,25 @@
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
?series a vivo:EventSeries .
- ?presentation vivo:inEventSeries ?series .
- ?series vivo:seriesForEvent ?presentation .
+ ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?series .
+ ?series <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
?series rdfs:label ?seriesLabel
} WHERE {
{
?subject ?property ?role .
?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?series a vivo:EventSeries .
- ?presentation vivo:inEventSeries ?series
} UNION {
?subject ?property ?role .
?role a vivo:PresenterRole .
?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
?series a vivo:EventSeries .
- ?presentation vivo:inEventSeries ?series .
- ?series rdfs:label ?seriesLabel
- } UNION {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?series a vivo:EventSeries .
- ?series vivo:seriesForEvent ?presentation
- } UNION {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?series a vivo:EventSeries .
- ?series vivo:seriesForEvent ?presentation .
+ ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?series .
+ ?series <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
?series rdfs:label ?seriesLabel
}
}
@@ -301,42 +229,30 @@
CONSTRUCT {
?subject ?property ?role .
?role a vivo:PresenterRole .
- ?workshop vivo:inEventSeries ?series .
- ?series vivo:seriesForEvent ?workshop .
- ?series a vivo:EventSeries .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
+ ?presentation a vivo:Presentation .
?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop .
?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
+ ?workshop a bibo:Workshop .
+ ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?series .
+ ?series <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop .
+ ?series a vivo:EventSeries .
?series rdfs:label ?seriesLabel
} WHERE {
{
?subject ?property ?role .
?role a vivo:PresenterRole .
+ } UNION {
+ ?subject ?property ?role .
+ ?role a vivo:PresenterRole .
?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?series a vivo:EventSeries .
+ ?presentation a vivo:Presentation .
?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop .
- ?workshop vivo:inEventSeries ?series
- } UNION {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?series a vivo:EventSeries .
- ?presentation <http://purl.obolibrary.org/obo/BFO_0000050> ?workshop .
- ?workshop vivo:inEventSeries ?series .
- ?series rdfs:label ?seriesLabel
- } UNION {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?series a vivo:EventSeries .
- ?series vivo:seriesForEvent ?workshop .
- ?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation
- } UNION {
- ?subject ?property ?role .
- ?role a vivo:PresenterRole .
- ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?presentation .
- ?series a vivo:EventSeries .
- ?series vivo:seriesForEvent ?workshop .
?workshop <http://purl.obolibrary.org/obo/BFO_0000051> ?presentation .
+ ?workshop a bibo:Workshop .
+ ?workshop <http://purl.obolibrary.org/obo/BFO_0000050> ?series .
+ ?series <http://purl.obolibrary.org/obo/BFO_0000051> ?workshop .
+ ?series a vivo:EventSeries .
?series rdfs:label ?seriesLabel
}
}
diff --git a/productMods/config/listViewConfig-hasPrincipalInvestigatorRole.xml b/productMods/config/listViewConfig-hasPrincipalInvestigatorRole.xml
new file mode 100644
index 00000000..71a0c8f9
--- /dev/null
+++ b/productMods/config/listViewConfig-hasPrincipalInvestigatorRole.xml
@@ -0,0 +1,195 @@
+
+
+
+
+
+
+
+ PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ SELECT DISTINCT
+ ?role
+ ?activity ?activityName
+ ?activityLabel
+ ?awardedBy
+ ?adminedBy
+ ?awardedByLabel
+ ?adminedByLabel
+ ?dateTimeStartRole ?dateTimeEndRole
+ ?dateTimeStartGrant ?dateTimeEndGrant
+ ?hideThis
+ WHERE {
+
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity rdfs:label ?activityLabel .
+ LET (?activityName := afn:localname(?activity))
+ }
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:assignedBy ?awardedBy .
+ ?awardedBy rdfs:label ?awardedByLabel
+ }
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:relates ?adminedByRole .
+ ?adminedByRole <http://purl.obolibrary.org/obo/RO_0000052> ?adminedBy .
+ ?adminedBy rdfs:label ?adminedByLabel
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
+ ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
+ ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
+ }
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
+ ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
+ }
+ OPTIONAL { ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
+ ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
+ }
+ OPTIONAL { ?role core:hideFromDisplay ?hideThis }
+ } ORDER BY DESC(?dateTimeEndRole) DESC(?dateTimeStartRole) DESC(?dateTimeEndGrant) DESC(?dateTimeStartGrant) ?activityLabel ?activityName
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?role ?roleProperty ?roleValue .
+ ?activity rdfs:label ?activityLabel .
+ ?activity core:assignedBy ?awardedBy .
+ ?awardedBy rdfs:label ?awardedByLabel .
+ ?activity core:relates ?adminedByRole .
+ ?adminedByRole <http://purl.obolibrary.org/obo/RO_0000052> ?adminedBy .
+ ?adminedBy rdfs:label ?adminedByLabel
+ } WHERE {
+ {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role ?roleProperty ?roleValue
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity rdfs:label ?activityLabel
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:assignedBy ?awardedBy .
+ ?awardedBy a foaf:Organization .
+ ?awardedBy rdfs:label ?awardedByLabel
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:relates ?adminedByRole .
+ ?adminedByRole a core:AdminsitratorRole.
+ ?adminedByRole <http://purl.obolibrary.org/obo/RO_0000052> ?adminedBy .
+ ?adminedBy a foaf:Organization .
+ ?adminedBy rdfs:label ?adminedByLabel
+ }
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
+ ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:start ?dateTimeStartValueRole .
+ ?dateTimeStartValueRole core:dateTime ?dateTimeStartRole
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
+ ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role core:dateTimeInterval ?dateTimeIntervalRole .
+ ?dateTimeIntervalRole core:end ?dateTimeEndValueRole .
+ ?dateTimeEndValueRole core:dateTime ?dateTimeEndRole
+ }
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
+ ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:start ?dateTimeStartValueGrant .
+ ?dateTimeStartValueGrant core:dateTime ?dateTimeStartGrant
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
+ ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:PrincipalInvestigatorRole .
+ ?role <http://vivoweb.org/ontology/core#relatedBy> ?activity .
+ ?activity a core:Grant .
+ ?activity core:dateTimeInterval ?dateTimeIntervalGrant .
+ ?dateTimeIntervalGrant core:end ?dateTimeEndValueGrant .
+ ?dateTimeEndValueGrant core:dateTime ?dateTimeEndGrant
+ }
+
+
+ propStatement-hasInvestigatorRole.ftl
+
diff --git a/productMods/config/listViewConfig-hasReviewerRole.xml b/productMods/config/listViewConfig-hasReviewerRole.xml
index e65fcada..b812a5b2 100644
--- a/productMods/config/listViewConfig-hasReviewerRole.xml
+++ b/productMods/config/listViewConfig-hasReviewerRole.xml
@@ -22,18 +22,20 @@
?subject ?property ?role
OPTIONAL { ?role core:roleContributesTo ?activity .
- ?activity vitro:mostSpecificType ?subclass
- OPTIONAL { ?activity rdfs:label ?activityName }
- OPTIONAL { ?subclass rdfs:label ?subclassLabel }
- }
+ ?activity rdfs:label ?activityName .
+ }
- OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
- OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
+ OPTIONAL { ?role core:roleContributesTo ?activity .
+ ?activity vitro:mostSpecificType ?subclass .
+ ?subclass rdfs:label ?subclassLabel
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
}
} ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityName
@@ -60,20 +62,11 @@
?subject ?property ?role .
?role a core:ReviewerRole .
?role vitro:mostSpecificType ?roleSubclass
- } UNION {
- ?subject ?property ?role .
- ?role a core:ReviewerRole .
- ?role core:roleContributesTo ?activity
} UNION {
?subject ?property ?role .
?role a core:ReviewerRole .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName .
- } UNION {
- ?subject ?property ?role .
- ?role a core:ReviewerRole .
- ?role core:roleContributesTo ?activity .
- ?activity vitro:mostSpecificType ?subclass
} UNION {
?subject ?property ?role .
?role a core:ReviewerRole .
diff --git a/productMods/config/listViewConfig-hasRole.xml b/productMods/config/listViewConfig-hasRole.xml
index 5e4a4e1b..46a53d9f 100644
--- a/productMods/config/listViewConfig-hasRole.xml
+++ b/productMods/config/listViewConfig-hasRole.xml
@@ -23,7 +23,6 @@
WHERE {
?subject ?property ?role .
?role a ?objectType .
- ?role vitro:mostSpecificType ?roleSubclass
OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
?activity rdfs:label ?activityLabel
@@ -46,25 +45,15 @@
?activity vitro:mostSpecificType ?subclass
}
-
- OPTIONAL { ?role core:relatedBy ?activity .
- ?activity rdfs:label ?activityLabel
-
-
- ?activity vitro:mostSpecificType ?subclass
-
- }
OPTIONAL { ?role rdfs:label ?roleLabel }
- OPTIONAL { ?role core:hideFromDisplay ?hideThis }
- OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
- OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
}
- FILTER ( ?objectType = ?roleSubclass )
} ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
@@ -84,22 +73,6 @@
}
-
- PREFIX core: <http://vivoweb.org/ontology/core#>
- PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
- PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
-
- CONSTRUCT {
- ?subject ?property ?role .
- ?role core:relatedBy ?activity .
- ?activity vitro:mostSpecificType ?subclass .
- } WHERE {
- ?subject ?property ?role .
- ?role core:relatedBy ?activity .
- ?activity vitro:mostSpecificType ?subclass
- }
-
-
PREFIX core: <http://vivoweb.org/ontology/core#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
@@ -141,26 +114,27 @@
?activity rdfs:label ?activityName
} WHERE {
{
- ?subject ?property ?role
+ ?subject ?property ?role .
+ ?role a ?objectType .
} UNION {
?subject ?property ?role .
+ ?role a ?objectType .
?role ?roleProperty ?roleValue
} UNION {
?subject ?property ?role .
+ ?role a ?objectType .
?role core:relates ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
+ ?role a ?objectType .
?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
?activity rdfs:label ?activityName
} UNION {
?subject ?property ?role .
+ ?role a ?objectType .
?role core:roleContributesTo ?activity .
?activity rdfs:label ?activityName
- } UNION {
- ?subject ?property ?role .
- ?role core:relatedBy ?activity .
- ?activity rdfs:label ?activityName
}
}
diff --git a/productMods/config/listViewConfig-informationResourceInAuthorship.xml b/productMods/config/listViewConfig-informationResourceInAuthorship.xml
index 343609b0..d02b328a 100644
--- a/productMods/config/listViewConfig-informationResourceInAuthorship.xml
+++ b/productMods/config/listViewConfig-informationResourceInAuthorship.xml
@@ -18,30 +18,22 @@
?subject ?property ?authorship .
OPTIONAL { ?authorship core:rank ?rank }
OPTIONAL { ?authorship core:relates ?person .
- ?person a foaf:Person .
- ?person rdfs:label ?personName
-
- OPTIONAL { ?person vitro:mostSpecificType ?subclass .
- ?subclass rdfs:subClassOf foaf:Person
- }
-
+ ?person a foaf:Person .
+ ?person rdfs:label ?personName
+
+ OPTIONAL { ?authorship core:relates ?person .
+ ?person a foaf:Person .
+ ?person vitro:mostSpecificType ?subclass .
+ ?subclass rdfs:subClassOf foaf:Person
+ }
+
}
FILTER ( bound(?person) )
} ORDER BY ?subclass ?rank ?personName
-
-
- PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
- PREFIX foaf: <http://xmlns.com/foaf/0.1/>
- CONSTRUCT {
- ?subclass rdfs:subClassOf foaf:Person
- } WHERE {
- ?subclass rdfs:subClassOf foaf:Person
- }
-
-
+
PREFIX core: <http://vivoweb.org/ontology/core#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
@@ -54,7 +46,8 @@
?authorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName .
- ?person vitro:mostSpecificType ?subclass
+ ?person vitro:mostSpecificType ?subclass .
+ ?subclass rdfs:subClassOf foaf:Person
} WHERE {
{
?subject ?property ?authorship .
@@ -75,7 +68,8 @@
?authorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName .
- ?person vitro:mostSpecificType ?subclass
+ ?person vitro:mostSpecificType ?subclass .
+ ?subclass rdfs:subClassOf foaf:Person
}
}
diff --git a/productMods/config/listViewConfig-informationResourceInEditorship.xml b/productMods/config/listViewConfig-informationResourceInEditorship.xml
index 7bd6b34f..e5fc3a01 100644
--- a/productMods/config/listViewConfig-informationResourceInEditorship.xml
+++ b/productMods/config/listViewConfig-informationResourceInEditorship.xml
@@ -18,30 +18,22 @@
?subject ?property ?editorship .
OPTIONAL { ?editorship core:rank ?rank }
OPTIONAL { ?editorship core:relates ?person .
- ?person a foaf:Person .
- ?person rdfs:label ?personName
-
- OPTIONAL { ?person vitro:mostSpecificType ?subclass .
- ?subclass rdfs:subClassOf foaf:Person
- }
-
- }
+ ?person a foaf:Person .
+ ?person rdfs:label ?personName
+ }
+
+ OPTIONAL { ?editorship core:relates ?person .
+ ?person a foaf:Person .
+ ?person vitro:mostSpecificType ?subclass .
+ ?subclass rdfs:subClassOf foaf:Person
+ }
+
FILTER ( bound(?person) )
} ORDER BY ?subclass ?rank ?personName
-
- PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
- PREFIX foaf: <http://xmlns.com/foaf/0.1/>
- CONSTRUCT {
- ?subclass rdfs:subClassOf foaf:Person
- } WHERE {
- ?subclass rdfs:subClassOf foaf:Person
- }
-
-
PREFIX core: <http://vivoweb.org/ontology/core#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
@@ -54,7 +46,8 @@
?editorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName .
- ?person vitro:mostSpecificType ?subclass
+ ?person vitro:mostSpecificType ?subclass .
+ ?subclass rdfs:subClassOf foaf:Person
} WHERE {
{
?subject ?property ?editorship .
@@ -75,7 +68,8 @@
?editorship core:relates ?person .
?person a foaf:Person .
?person rdfs:label ?personName .
- ?person vitro:mostSpecificType ?subclass
+ ?person vitro:mostSpecificType ?subclass .
+ ?subclass rdfs:subClassOf foaf:Person
}
}
diff --git a/productMods/config/listViewConfig-issuedCredential.xml b/productMods/config/listViewConfig-issuedCredential.xml
index 349187ad..c5a5d54f 100644
--- a/productMods/config/listViewConfig-issuedCredential.xml
+++ b/productMods/config/listViewConfig-issuedCredential.xml
@@ -27,27 +27,25 @@
?subject ?property ?issuedCredential .
?issuedCredential a core:IssuedCredential .
LET (?issuedCredentialLocal := afn:localname(?issuedCredential))
- OPTIONAL { ?issuedCredential rdfs:label ?issuedCredentialLabel }
+ OPTIONAL {?issuedCredential rdfs:label ?issuedCredentialLabel }
OPTIONAL { ?issuedCredential core:relates ?credential .
?credential a core:Credential .
+ ?credential core:relatedBy ?issuedCredential .
+ ?credential rdfs:label ?credentialLabel .
LET (?credentialLocal := afn:localname(?credential))
- ?credential core:relatedBy ?issuedCredential
- OPTIONAL { ?credential rdfs:label ?credentialLabel }
- }
- OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
- }
- OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
- }
- OPTIONAL { ?issuedCredential core:dateIssued ?dateTimeValue
- OPTIONAL { ?dateTimeValue core:dateTime ?dateTime }
- }
- } ORDER BY DESC(?dateTime) DESC(?dateTimeEnd)
+ }
+ OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?issuedCredential core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ }
+ OPTIONAL { ?issuedCredential core:dateIssued ?dateTimeValue .
+ ?dateTimeValue core:dateTime ?dateTime
+ }
+ } ORDER BY DESC(?dateTime) DESC(?dateTimeEnd)
diff --git a/productMods/config/listViewConfig-organizationForPosition.xml b/productMods/config/listViewConfig-organizationForPosition.xml
index a49f0889..d76b0976 100644
--- a/productMods/config/listViewConfig-organizationForPosition.xml
+++ b/productMods/config/listViewConfig-organizationForPosition.xml
@@ -29,16 +29,15 @@
OPTIONAL { ?position rdfs:label ?positionTitle }
OPTIONAL { ?position core:hideFromDisplay ?hideThis }
- OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
- OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
+ OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ }
# Get current positions only: end date is either null or not in the past
- }
- # NOT EXISTS { ?position core:hideFromDisplay ?hideThis }
FILTER ( !bound(?dateTimeEnd) ||
afn:substring(str(?dateTimeEnd), 0, 4) >= afn:substring(str(afn:now()), 0, 4) )
diff --git a/productMods/config/listViewConfig-organizationForTraining.xml b/productMods/config/listViewConfig-organizationForTraining.xml
index 43ba280b..9530b30c 100644
--- a/productMods/config/listViewConfig-organizationForTraining.xml
+++ b/productMods/config/listViewConfig-organizationForTraining.xml
@@ -1,146 +1,199 @@
-
-
-
-
-
-
-
- PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
- PREFIX core: <http://vivoweb.org/ontology/core#>
- PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
- PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
-
- SELECT DISTINCT ?subclass
- ?localName
- ?training
- ?person
- ?personName
- ?degree
- ?degreeName
- ?degreeAbbr
- ?field
- ?suppInfo
- ?dateTimeStart ?dateTimeEnd
- WHERE {
- ?subject ?property ?training
- LET ( ?localName := afn:localname(?training) )
- OPTIONAL { ?training core:educationalTrainingOf ?person
- OPTIONAL { ?person rdfs:label ?personName }
- }
- OPTIONAL { ?training core:degreeEarned ?degree
- OPTIONAL { ?degree rdfs:label ?degreeName }
- OPTIONAL { ?degree core:abbreviation ?degreeAbbr }
- }
-
- OPTIONAL { ?training vitro:mostSpecificType ?subclass .
- ?subclass rdfs:subClassOf core:EducationalTraining
- }
-
-
- OPTIONAL { ?training rdfs:label ?trainingLabel }
- OPTIONAL { ?training core:majorField ?field }
- OPTIONAL { ?training core:supplementalInformation ?suppInfo }
- OPTIONAL { ?training core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
- OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
- }
-
- FILTER ( bound(?person) )
-
- } ORDER BY ?subclass ?personName
-
-
-
- PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
- PREFIX core: <http://vivoweb.org/ontology/core#>
- PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
- CONSTRUCT {
- ?subject ?property ?training .
- ?training vitro:mostSpecificType ?subclass .
- ?subclass rdfs:subClassOf core:EducationalTraining
- } WHERE {
- ?subject ?property ?training .
- ?training vitro:mostSpecificType ?subclass .
- ?subclass rdfs:subClassOf core:EducationalTraining
- }
-
-
-
- PREFIX core: <http://vivoweb.org/ontology/core#>
- PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
- CONSTRUCT {
- ?subject ?property ?training .
- ?training ?trainingProperty ?trainingValue .
- ?person rdfs:label ?personName
- } WHERE {
- {
- ?subject ?property ?training
- } UNION {
- ?subject ?property ?training .
- ?training ?trainingProperty ?trainingValue
- } UNION {
- ?subject ?property ?training .
- ?training core:educationalTrainingOf ?person .
- ?person rdfs:label ?personName
- }
- }
-
-
-
- PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
- PREFIX core: <http://vivoweb.org/ontology/core#>
-
- CONSTRUCT {
- ?degree rdfs:label ?degreeName .
- ?degree core:abbreviation ?degreeAbbr
- } WHERE {
- {
- ?subject ?property ?training .
- ?training core:degreeEarned ?degree .
- ?degree rdfs:label ?degreeName
- } UNION {
- ?subject ?property ?training .
- ?training core:degreeEarned ?degree .
- ?degree core:abbreviation ?degreeAbbr
- }
- }
-
-
-
- PREFIX core: <http://vivoweb.org/ontology/core#>
- CONSTRUCT {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- } WHERE {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
-
-
-
- PREFIX core: <http://vivoweb.org/ontology/core#>
- CONSTRUCT {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- } WHERE {
- ?subject ?property ?position .
- ?position core:dateTimeInterval ?dateTimeInterval .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
-
-
- propStatement-organizationForTraining.ftl
-
+
+
+
+
+
+
+
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
+ PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ SELECT DISTINCT ?subclass
+ ?edTraining
+ ?person ?personName
+ ?awardedDegree
+ ?degree
+ ?degreeName ?degreeAbbr
+ ?majorField ?info
+ ?dateTimeStart ?dateTimeEnd
+ WHERE {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess
+ OPTIONAL { ?edTraining vitro:mostSpecificType ?subclass . }
+ OPTIONAL { ?edTraining <http://purl.obolibrary.org/obo/RO_0002234> ?awardedDegree .
+ ?awardedDegree core:relates ?degree .
+ ?degree a core:AcademicDegree .
+ ?degree rdfs:label ?degreeName
+ }
+ OPTIONAL { ?edTraining <http://purl.obolibrary.org/obo/RO_0002234> ?awardedDegree .
+ ?awardedDegree core:relates ?degree .
+ ?degree a core:AcademicDegree .
+ ?degree core:abbreviation ?degreeAbbr
+ }
+ OPTIONAL { ?edTraining <http://purl.obolibrary.org/obo/RO_0000057> ?person .
+ ?person a foaf:Person .
+ ?person rdfs:label ?personName
+ }
+ OPTIONAL { ?edTraining core:majorField ?majorField }
+ OPTIONAL { ?edTraining core:supplementalInformation ?info }
+ OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?edTraining core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ }
+ } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart)
+
+
+
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ CONSTRUCT {
+ ?edTraining vitro:mostSpecificType ?subclass
+ } WHERE {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining vitro:mostSpecificType ?subclass .
+ }
+
+
+
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+
+ CONSTRUCT {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining ?edTrainingProp ?edTrainingValue .
+ ?edTraining <http://purl.obolibrary.org/obo/RO_0002234> ?awardedDegree .
+ ?awardedDegree core:relates ?degree .
+ ?edTraining core:dateTimeInterval ?dateTimeInterval
+ } WHERE {
+ {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess
+ }
+ UNION {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining ?edTrainingProp ?edTrainingValue
+ }
+ UNION {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining <http://purl.obolibrary.org/obo/RO_0002234> ?awardedDegree .
+ }
+ UNION {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining <http://purl.obolibrary.org/obo/RO_0002234> ?awardedDegree .
+ ?awardedDegree core:relates ?degree
+ }
+ UNION {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining core:dateTimeInterval ?dateTimeInterval
+ }
+ }
+
+
+
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX foaf: <http://xmlns.com/foaf/0.1/>
+
+ CONSTRUCT {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining ?edTrainingProp ?edTrainingValue .
+ ?edTraining <http://purl.obolibrary.org/obo/RO_0000057> ?person .
+ ?person a foaf:Person .
+ ?person rdfs:label ?personName
+ } WHERE {
+ {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess
+ }
+ UNION {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining ?edTrainingProp ?edTrainingValue
+ }
+ UNION {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining <http://purl.obolibrary.org/obo/RO_0000057> ?person .
+ ?person a foaf:Person .
+ ?person rdfs:label ?personName
+ }
+ }
+
+
+
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+
+ CONSTRUCT {
+ ?degree a core:AcademicDegree .
+ ?degree rdfs:label ?degreeName .
+ ?degree core:abbreviation ?degreeAbbr
+ } WHERE {
+ {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining <http://purl.obolibrary.org/obo/RO_0002234> ?awardedDegree .
+ ?awardedDegree core:relates ?degree .
+ ?degree a core:AcademicDegree .
+ ?degree rdfs:label ?degreeName
+ } UNION {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining <http://purl.obolibrary.org/obo/RO_0002234> ?awardedDegree .
+ ?awardedDegree core:relates ?degree .
+ ?degree a core:AcademicDegree .
+ ?degree core:abbreviation ?degreeAbbr
+ }
+ }
+
+
+
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+
+ CONSTRUCT {
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart .
+ } WHERE {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart .
+ }
+
+
+
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+
+ CONSTRUCT {
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ } WHERE {
+ ?subject ?property ?edTraining .
+ ?edTraining a core:EducationalProcess .
+ ?edTraining core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ }
+
+
+ propStatement-organizationForTraining.ftl
+
diff --git a/productMods/config/listViewConfig-personInPosition.xml b/productMods/config/listViewConfig-personInPosition.xml
index 6922110b..6438f459 100644
--- a/productMods/config/listViewConfig-personInPosition.xml
+++ b/productMods/config/listViewConfig-personInPosition.xml
@@ -19,27 +19,33 @@
?org ?orgName
?middleOrg ?middleOrgName
?outerOrg ?outerOrgName
- ?dateTimeStart ?dateTimeEnd WHERE {
- ?subject ?property ?position
+ ?dateTimeStart ?dateTimeEnd
+ WHERE {
+ ?subject ?property ?position .
OPTIONAL { ?position core:relates ?org .
?org rdfs:label ?orgName
- OPTIONAL { ?org obo:BFO_0000050 ?middleOrg .
- ?middleOrg rdfs:label ?middleOrgName
- OPTIONAL { ?middleOrg obo:BFO_0000050 ?outerOrg .
- ?outerOrg rdfs:label ?outerOrgName
- }
- }
+ }
+ OPTIONAL { ?position core:relates ?org .
+ ?org rdfs:label ?orgName .
+ ?org obo:BFO_0000050 ?middleOrg .
+ ?middleOrg rdfs:label ?middleOrgName
+ }
+ OPTIONAL { ?position core:relates ?org .
+ ?org rdfs:label ?orgName .
+ ?org obo:BFO_0000050 ?middleOrg .
+ ?middleOrg obo:BFO_0000050 ?outerOrg .
+ ?outerOrg rdfs:label ?outerOrgName
}
OPTIONAL { ?position rdfs:label ?positionTitle }
OPTIONAL { ?position core:hrJobTitle ?hrJobTitle }
OPTIONAL { ?position core:rank ?rank }
- OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
- OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
+ OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?position core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
}
OPTIONAL { ?position vitro:mostSpecificType ?subclass .
@@ -75,7 +81,6 @@
PREFIX obo: <http://purl.obolibrary.org/obo/>
CONSTRUCT {
?subject ?property ?position .
- ?position a core:Position .
?position ?positionProperty ?positionValue .
?org rdfs:label ?orgName .
?org obo:BFO_0000050 ?middleOrg .
@@ -86,14 +91,7 @@
{
?subject ?property ?position .
?position a core:Position .
- } UNION {
- ?subject ?property ?position .
- ?position a core:Position .
?position ?positionProperty ?positionValue
- } UNION {
- ?subject ?property ?position .
- ?position a core:Position .
- ?position core:rank ?rank
} UNION {
?subject ?property ?position .
?position a core:Position .
@@ -105,12 +103,6 @@
?position a core:Position .
?position core:relates ?org .
?org a foaf:Organization .
- ?org obo:BFO_0000050 ?middleOrg
- } UNION {
- ?subject ?property ?position .
- ?position a core:Position .
- ?position core:relates ?org .
- ?org a foaf:Organization .
?org obo:BFO_0000050 ?middleOrg .
?middleOrg rdfs:label ?middleOrgName
} UNION {
@@ -119,13 +111,6 @@
?position core:relates ?org .
?org a foaf:Organization .
?org obo:BFO_0000050 ?middleOrg .
- ?middleOrg obo:BFO_0000050 ?outerOrg
- } UNION {
- ?subject ?property ?position .
- ?position a core:Position .
- ?position core:positionInOrganization ?org .
- ?org a foaf:Organization .
- ?org obo:BFO_0000050 ?middleOrg .
?middleOrg obo:BFO_0000050 ?outerOrg .
?outerOrg rdfs:label ?outerOrgName
}
@@ -136,28 +121,22 @@
PREFIX core: <http://vivoweb.org/ontology/core#>
CONSTRUCT {
?subject ?property ?position .
- ?position a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
} WHERE {
?subject ?property ?position .
?position a core:Position .
?position core:dateTimeInterval ?dateTimeInterval .
?dateTimeInterval core:start ?dateTimeStartValue .
?dateTimeStartValue core:dateTime ?dateTimeStart .
- ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
}
-
+
propStatement-personInPosition.ftl
diff --git a/productMods/config/listViewConfig-preferredTitle.xml b/productMods/config/listViewConfig-preferredTitle.xml
index c592fbb9..fc26114c 100644
--- a/productMods/config/listViewConfig-preferredTitle.xml
+++ b/productMods/config/listViewConfig-preferredTitle.xml
@@ -12,8 +12,8 @@
?preferredTitle
WHERE {
?subject ?property ?vcard .
- ?vcard vcard:hasTitle ?title
- OPTIONAL { ?title vcard:title ?preferredTitle }
+ ?vcard vcard:hasTitle ?title .
+ ?title vcard:title ?preferredTitle
}
diff --git a/productMods/config/listViewConfig-relatedRole.xml b/productMods/config/listViewConfig-relatedRole.xml
index 86460c02..fa9f6b17 100644
--- a/productMods/config/listViewConfig-relatedRole.xml
+++ b/productMods/config/listViewConfig-relatedRole.xml
@@ -3,8 +3,6 @@
-
@@ -30,23 +28,27 @@ http://vivoweb.org/ontology/core#realizedRole and http://vivoweb.org/ontology/co
# We need ?subclass in the uncollated query to get the roleTypeLabel
# for roles that have no label.
- OPTIONAL { ?role vitro:mostSpecificType ?subclass .
- OPTIONAL { ?subclass rdfs:label ?roleTypeLabel }
- OPTIONAL { ?role <http://purl.obolibrary.org/obo/RO_0000052> ?indivInRole
- OPTIONAL { ?indivInRole rdfs:label ?indivLabel }
- }
- OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000055> ?indivInRole
- OPTIONAL { ?indivInRole rdfs:label ?indivLabel }
- }
+ OPTIONAL { ?role vitro:mostSpecificType ?subclass . }
+ OPTIONAL { ?role vitro:mostSpecificType ?subclass .
+ ?subclass rdfs:label ?roleTypeLabel
+ }
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/RO_0000052> ?indivInRole }
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/RO_0000052> ?indivInRole .
+ ?indivInRole rdfs:label ?indivLabel
+ }
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000055> ?indivInRole .
+ }
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000055> ?indivInRole .
+ ?indivInRole rdfs:label ?indivLabel
}
- OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval
- OPTIONAL { ?dateTimeInterval core:start ?dateTimeStartValue .
- ?dateTimeStartValue core:dateTime ?dateTimeStart
- }
- OPTIONAL { ?dateTimeInterval core:end ?dateTimeEndValue .
- ?dateTimeEndValue core:dateTime ?dateTimeEnd
- }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
}
FILTER ( bound(?indivInRole) )
diff --git a/productMods/config/listViewConfig-researchActivities.xml b/productMods/config/listViewConfig-researchActivities.xml
new file mode 100644
index 00000000..1e401b95
--- /dev/null
+++ b/productMods/config/listViewConfig-researchActivities.xml
@@ -0,0 +1,157 @@
+
+
+
+
+
+
+
+ PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ SELECT DISTINCT ?subclass
+ # send the property to the template, since this view supports multiple role properties
+ ?property
+ ?role
+ ?roleLabel
+ ?activity ?activityName
+ ?activityLabel
+ ?dateTimeStart ?dateTimeEnd
+ ?hideThis
+ ?objectType
+ WHERE {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role vitro:mostSpecificType ?roleSubclass
+
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity rdfs:label ?activityLabel
+
+
+ ?activity vitro:mostSpecificType ?subclass
+
+ }
+ OPTIONAL { ?role core:relatedBy ?activity .
+ ?activity rdfs:label ?activityLabel
+
+
+ ?activity vitro:mostSpecificType ?subclass
+
+ }
+ OPTIONAL { ?role rdfs:label ?roleLabel }
+ OPTIONAL { ?role core:hideFromDisplay ?hideThis }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ }
+ FILTER ( ?roleSubclass = core:ResearcherRole)
+ } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role core:relatedBy ?activity .
+ ?activity vitro:mostSpecificType ?subclass .
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role core:relatedBy ?activity .
+ ?activity vitro:mostSpecificType ?subclass
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity vitro:mostSpecificType ?subclass .
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity vitro:mostSpecificType ?subclass
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role ?roleProperty ?roleValue .
+ ?activity rdfs:label ?activityName
+ } WHERE {
+ {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role ?roleProperty ?roleValue
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity rdfs:label ?activityName
+ } UNION {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role core:relatedBy ?activity .
+ ?activity rdfs:label ?activityName
+ }
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a core:ResearcherRole .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ }
+
+
+ propStatement-hasRole.ftl
+
diff --git a/productMods/config/listViewConfig-researchAreaOf.xml b/productMods/config/listViewConfig-researchAreaOf.xml
index 3a161ec8..b40b84d7 100644
--- a/productMods/config/listViewConfig-researchAreaOf.xml
+++ b/productMods/config/listViewConfig-researchAreaOf.xml
@@ -26,14 +26,19 @@
?subject ?property ?person .
OPTIONAL { ?person core:relatedBy ?position .
?position a core:Position
- OPTIONAL { ?position rdfs:label ?posnLabel }
+ }
+ OPTIONAL { ?person core:relatedBy ?position .
+ ?position a core:Position .
+ ?position rdfs:label ?posnLabel
}
OPTIONAL { ?person rdfs:label ?personName }
OPTIONAL { ?person obo:ARG_2000028 ?vcard .
?vcard vcard:hasTitle ?titleObj .
?titleObj vcard:title ?title
}
- OPTIONAL { ?position core:relates ?org .
+ OPTIONAL { ?person core:relatedBy ?position .
+ ?position a core:Position .
+ ?position core:relates ?org .
?org a foaf:Organization .
?org rdfs:label ?orgLabel
}
diff --git a/productMods/config/listViewConfig-roleContributesTo.xml b/productMods/config/listViewConfig-roleContributesTo.xml
new file mode 100644
index 00000000..6cc74045
--- /dev/null
+++ b/productMods/config/listViewConfig-roleContributesTo.xml
@@ -0,0 +1,133 @@
+
+
+
+
+
+
+
+ PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ SELECT DISTINCT ?subclass
+ # send the property to the template, since this view supports multiple role properties
+ ?property
+ ?role
+ ?roleLabel
+ ?activity ?activityName
+ ?activityLabel
+ ?dateTimeStart ?dateTimeEnd
+ ?hideThis
+ ?objectType
+ WHERE {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+
+ OPTIONAL { ?role core:roleContributesTo ?activity .
+ ?activity rdfs:label ?activityLabel
+
+
+ ?activity vitro:mostSpecificType ?subclass
+
+ }
+ OPTIONAL { ?role rdfs:label ?roleLabel }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ }
+ } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:roleContributesTo ?activity .
+ ?activity vitro:mostSpecificType ?subclass .
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:roleContributesTo ?activity .
+ ?activity vitro:mostSpecificType ?subclass
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role ?roleProperty ?roleValue .
+ ?activity rdfs:label ?activityName
+ } WHERE {
+ {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ } UNION {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role ?roleProperty ?roleValue
+ } UNION {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:relates ?activity .
+ ?activity rdfs:label ?activityName
+ } UNION {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity rdfs:label ?activityName
+ } UNION {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:roleContributesTo ?activity .
+ ?activity rdfs:label ?activityName
+ }
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ }
+
+
+ propStatement-hasRole.ftl
+
diff --git a/productMods/config/listViewConfig-roleRealizedIn.xml b/productMods/config/listViewConfig-roleRealizedIn.xml
new file mode 100644
index 00000000..a57e828a
--- /dev/null
+++ b/productMods/config/listViewConfig-roleRealizedIn.xml
@@ -0,0 +1,133 @@
+
+
+
+
+
+
+
+ PREFIX afn: <http://jena.hpl.hp.com/ARQ/function#>
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ SELECT DISTINCT ?subclass
+ # send the property to the template, since this view supports multiple role properties
+ ?property
+ ?role
+ ?roleLabel
+ ?activity ?activityName
+ ?activityLabel
+ ?dateTimeStart ?dateTimeEnd
+ ?hideThis
+ ?objectType
+ WHERE {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+
+ OPTIONAL { ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity rdfs:label ?activityLabel
+
+
+ ?activity vitro:mostSpecificType ?subclass
+
+ }
+ OPTIONAL { ?role rdfs:label ?roleLabel }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+ OPTIONAL { ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ }
+ } ORDER BY ?subclass DESC(?dateTimeEnd) DESC(?dateTimeStart) ?activityLabel ?activityName
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ PREFIX vitro: <http://vitro.mannlib.cornell.edu/ns/vitro/0.7#>
+
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity vitro:mostSpecificType ?subclass .
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity vitro:mostSpecificType ?subclass
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role ?roleProperty ?roleValue .
+ ?activity rdfs:label ?activityName
+ } WHERE {
+ {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ } UNION {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role ?roleProperty ?roleValue
+ } UNION {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:relates ?activity .
+ ?activity rdfs:label ?activityName
+ } UNION {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role <http://purl.obolibrary.org/obo/BFO_0000054> ?activity .
+ ?activity rdfs:label ?activityName
+ } UNION {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:roleContributesTo ?activity .
+ ?activity rdfs:label ?activityName
+ }
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:start ?dateTimeStartValue .
+ ?dateTimeStartValue core:dateTime ?dateTimeStart
+ }
+
+
+
+ PREFIX core: <http://vivoweb.org/ontology/core#>
+ CONSTRUCT {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ } WHERE {
+ ?subject ?property ?role .
+ ?role a ?objectType .
+ ?role core:dateTimeInterval ?dateTimeInterval .
+ ?dateTimeInterval core:end ?dateTimeEndValue .
+ ?dateTimeEndValue core:dateTime ?dateTimeEnd
+ }
+
+
+ propStatement-hasRole.ftl
+
diff --git a/productMods/config/listViewConfig-webpage.xml b/productMods/config/listViewConfig-webpage.xml
index 58ddf13c..9c97cad7 100644
--- a/productMods/config/listViewConfig-webpage.xml
+++ b/productMods/config/listViewConfig-webpage.xml
@@ -23,8 +23,8 @@
OPTIONAL { ?link vcard:url ?url }
OPTIONAL { ?link core:rank ?rank }
- FILTER ( bound(?url) )
-
+ FILTER ( bound(?link) )
+
} ORDER BY ?rank ?label
diff --git a/productMods/counter.jsp b/productMods/counter.jsp
index 0b8de8a7..59be7457 100644
--- a/productMods/counter.jsp
+++ b/productMods/counter.jsp
@@ -1,434 +1,456 @@
-<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
-
-<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
-<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
-<%@ taglib uri="http://djpowell.net/tmp/sparql-tag/0.1/" prefix="sparql" %>
-<%@ taglib uri="http://jakarta.apache.org/taglibs/string-1.1" prefix="str" %>
-<%@ page import="java.net.URLDecoder" %>
-
-
-
-
Linkage Information
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(?author) as ?counts) WHERE {
- ?author rdf:type core:Authorship .
- ?author core:linkedInformationResource ?infor .
- ?infor rdf:type core:InformationResource .
- }
-
-
- 'Person'-'InformationResource' linkages (${inforauthorship.counts.string})
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX foaf:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(distinct ?author) as ?counts) WHERE {
- ?author core:authorInAuthorship ?obj .
- ?author rdf:type foaf:Person .
- ?obj core:linkedInformationResource ?infor .
- ?infor rdf:type core:InformationResource .
- }
-
-
- 'Person' entities which published 'InformationResource' entities (${inforauthor.counts.string})
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(distinct ?infor) as ?counts) WHERE {
- ?subj core:linkedInformationResource ?infor .
- ?infor rdf:type core:InformationResource .
- }
-
-
- 'InformationResource' entities (${infor.counts.string})
-
-
-
-
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(?author) as ?counts) WHERE {
- ?author rdf:type core:Authorship .
- ?author core:linkedInformationResource ?infor .
- ?infor rdf:type core:ConferencePaper .
- }
-
-
- 'Person'-'ConferencePaper' linkages (${confauthorship.counts.string})
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX foaf:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(distinct ?author) as ?counts) WHERE {
- ?author core:authorInAuthorship ?obj .
- ?author rdf:type foaf:Person .
- ?obj core:linkedInformationResource ?infor .
- ?infor rdf:type core:ConferencePaper .
- }
-
-
- 'Person' entities which published 'ConferencePaper' entities (${confauthor.counts.string})
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(distinct ?infor) as ?counts) WHERE {
- ?subj core:linkedInformationResource ?infor .
- ?infor rdf:type core:ConferencePaper .
- }
-
-
- 'ConferencePaper' entities (${conf.counts.string})
-
-
-
-
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(?author) as ?counts) WHERE {
- ?author rdf:type core:Authorship .
- ?author core:linkedInformationResource ?infor .
- ?infor rdf:type bibo:AcademicArticle .
- }
-
-
- 'Person'-'AcademicArticle' linkages (${acaauthorship.counts.string})
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX foaf:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(distinct ?author) as ?counts) WHERE {
- ?author core:authorInAuthorship ?obj .
- ?author rdf:type foaf:Person .
- ?obj core:linkedInformationResource ?infor .
- ?infor rdf:type bibo:AcademicArticle .
- }
-
-
- 'Person' entities which published 'AcademicArticle' entities (${acaauthor.counts.string})
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(distinct ?infor) as ?counts) WHERE {
- ?subj core:linkedInformationResource ?infor .
- ?infor rdf:type bibo:AcademicArticle .
- }
-
-
- 'AcademicArticle' entities (${aca.counts.string})
-
-
-
-
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(*) as ?counts) WHERE {
- ?grant core:hasInvestigator ?pi .
- }
-
-
- 'Person'-'Grant' linkages (${piship.counts.string})
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(distinct ?pi) as ?counts) WHERE {
- ?grant core:hasInvestigator ?pi .
- ?grant rdf:type core:Grant .
- }
-
-
- 'Person' entities which are (co-)investigators on 'Grant' entities (${pi.counts.string})
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(distinct ?grant) as ?counts) WHERE {
- ?grant rdf:type core:Grant .
- }
-
-
- 'Grant' entities (${grant.counts.string})
-
-
-
-
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(*) as ?counts) WHERE {
- ?teacher core:teaching ?obj .
- }
-
-
- 'Person'-'CourseSection' linkages (${teaching.counts.string})
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(distinct ?teacher) as ?counts) WHERE {
- ?teacher core:teaching ?obj .
- }
-
-
- 'Person' entities which teach 'CourseSection' entities (${teacher.counts.string})
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(?course) as ?counts) WHERE {
- ?course rdf:type core:CourseSection .
- }
-
-
- 'CourseSection' entities (${course.counts.string})
-
-
-
-
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(*) as ?counts) WHERE {
- ?author1 rdf:type core:Authorship .
- ?author2 rdf:type core:Authorship .
- ?author1 core:linkedInformationResource ?infor .
- ?author2 core:linkedInformationResource ?infor .
- ?infor rdf:type core:InformationResource .
- FILTER (str(?author1) < str(?author2))
- }
-
-
- Total co-author linkages (${coauthor.counts.string})
-
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT DISTINCT ?author1 ?author2 WHERE {
- ?author1 rdf:type core:Authorship .
- ?author2 rdf:type core:Authorship .
- ?author1 core:linkedInformationResource ?infor .
- ?author2 core:linkedInformationResource ?infor .
- ?infor rdf:type core:InformationResource .
- FILTER (str(?author1) < str(?author2))
- }
-
- Unique co-author linkages (${fn:length(discoauthors.rows)})
-
-
-
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT (count(*) as ?counts) WHERE {
- ?grant core:hasInvestigator ?pi1 .
- ?grant core:hasInvestigator ?pi2 .
- FILTER (str(?pi1) < str(?pi2))
- }
-
-
- Total co-investigator linkages (${copi.counts.string})
-
-
-
-
-
-
-
-
- PREFIX rdfs:
- PREFIX rdf:
- PREFIX akt:
- PREFIX bibo:
- PREFIX core:
- SELECT DISTINCT ?pi1 ?pi2 WHERE {
- ?grant core:hasInvestigator ?pi1 .
- ?grant core:hasInvestigator ?pi2 .
- FILTER (str(?pi1) < str(?pi2))
- }
-
- Unique co-investigator linkages (${fn:length(discopis.rows)})
-
-
-
-
-
-
+<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
+
+<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
+<%@ taglib uri="http://djpowell.net/tmp/sparql-tag/0.1/" prefix="sparql" %>
+<%@ taglib uri="http://jakarta.apache.org/taglibs/string-1.1" prefix="str" %>
+<%@ page import="java.net.URLDecoder" %>
+<%@ page import="edu.cornell.mannlib.vitro.webapp.dao.ModelAccess"%>
+<% request.setAttribute("jenaOntModel", ModelAccess.on(getServletContext()).getJenaOntModel()); %>
+
+
+
+
Linkage Information
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ PREFIX obo:
+ SELECT (count(?author) as ?counts) WHERE {
+ ?author rdf:type core:Authorship .
+ ?author core:relates ?infor .
+ ?infor rdf:type obo:IAO_0000030 .
+ }
+
+
+ 'Person'-'InformationResource' linkages (${inforauthorship.counts.string})
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX foaf:
+ PREFIX bibo:
+ PREFIX core:
+ PREFIX obo:
+ SELECT (count(distinct ?author) as ?counts) WHERE {
+ ?author core:relatedBy ?obj .
+ ?author rdf:type foaf:Person .
+ ?obj rdf:type core:Authorship .
+ ?obj core:relates ?infor .
+ ?infor rdf:type obo:IAO_0000030 .
+ }
+
+
+ 'Person' entities which published 'InformationResource' entities (${inforauthor.counts.string})
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ PREFIX obo:
+ SELECT (count(distinct ?infor) as ?counts) WHERE {
+ ?subj core:relates ?infor .
+ ?infor rdf:type obo:IAO_0000030 .
+ }
+
+
+ 'InformationResource' entities (${infor.counts.string})
+
+
+
+
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ SELECT (count(?author) as ?counts) WHERE {
+ ?author rdf:type core:Authorship .
+ ?author core:relates ?infor .
+ ?infor rdf:type core:ConferencePaper .
+ }
+
+
+ 'Person'-'ConferencePaper' linkages (${confauthorship.counts.string})
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX foaf:
+ PREFIX bibo:
+ PREFIX core:
+ SELECT (count(distinct ?author) as ?counts) WHERE {
+ ?author core:relatedBy ?obj .
+ ?author rdf:type foaf:Person .
+ ?obj rdf:type core:Authorship .
+ ?obj core:relates ?infor .
+ ?infor rdf:type core:ConferencePaper .
+ }
+
+
+ 'Person' entities which published 'ConferencePaper' entities (${confauthor.counts.string})
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ SELECT (count(distinct ?infor) as ?counts) WHERE {
+ ?subj core:relates ?infor .
+ ?infor rdf:type core:ConferencePaper .
+ }
+
+
+ 'ConferencePaper' entities (${conf.counts.string})
+
+
+
+
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ SELECT (count(?author) as ?counts) WHERE {
+ ?author rdf:type core:Authorship .
+ ?author core:relates ?infor .
+ ?infor rdf:type bibo:AcademicArticle .
+ }
+
+
+ 'Person'-'AcademicArticle' linkages (${acaauthorship.counts.string})
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX foaf:
+ PREFIX bibo:
+ PREFIX core:
+ SELECT (count(distinct ?author) as ?counts) WHERE {
+ ?author core:relatedBy ?obj .
+ ?author rdf:type foaf:Person .
+ ?obj rdf:type core:Authorship .
+ ?obj core:relates ?infor .
+ ?infor rdf:type bibo:AcademicArticle .
+ }
+
+
+ 'Person' entities which published 'AcademicArticle' entities (${acaauthor.counts.string})
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ SELECT (count(distinct ?infor) as ?counts) WHERE {
+ ?subj core:relates ?infor .
+ ?infor rdf:type bibo:AcademicArticle .
+ }
+
+
+ 'AcademicArticle' entities (${aca.counts.string})
+
+
+
+
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ SELECT (count(*) as ?counts) WHERE {
+ ?grant core:relates ?pi .
+ ?grant rdf:type core:Grant .
+ ?pi rdf:type core:InvestigatorRole .
+ }
+
+
+ 'Person'-'Grant' linkages (${piship.counts.string})
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ SELECT (count(distinct ?pi) as ?counts) WHERE {
+ ?grant core:relates ?pi .
+ ?grant rdf:type core:Grant .
+ ?pi rdf:type core:InvestigatorRole .
+ }
+
+
+ 'Person' entities which are (co-)investigators on 'Grant' entities (${pi.counts.string})
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ SELECT (count(distinct ?grant) as ?counts) WHERE {
+ ?grant rdf:type core:Grant .
+ }
+
+
+ 'Grant' entities (${grant.counts.string})
+
+
+
+
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ PREFIX obo:
+ SELECT (count(*) as ?counts) WHERE {
+ ?teacher obo:RO_0000053 ?obj .
+ ?obj rdf:type core:teacherRole .
+ }
+
+
+ 'Person'-'CourseSection' linkages (${teaching.counts.string})
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ PREFIX obo:
+ SELECT (count(distinct ?teacher) as ?counts) WHERE {
+ ?teacher core:teaching ?obj .
+ ?teacher obo:RO_0000053 ?obj .
+ ?obj rdf:type core:teacherRole .
+ }
+
+
+ 'Person' entities which teach 'CourseSection' entities (${teacher.counts.string})
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ SELECT (count(?course) as ?counts) WHERE {
+ ?course rdf:type core:Course .
+ }
+
+
+ 'Course' entities (${course.counts.string})
+
+
+
+
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ PREFIX obo:
+ SELECT (count(*) as ?counts) WHERE {
+ ?author1 rdf:type core:Authorship .
+ ?author2 rdf:type core:Authorship .
+ ?author1 core:relates ?infor .
+ ?author2 core:relates ?infor .
+ ?infor rdf:type obo:IAO_0000030 .
+ FILTER (str(?author1) < str(?author2))
+ }
+
+
+ Total co-author linkages (${coauthor.counts.string})
+
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ PREFIX obo:
+ SELECT DISTINCT ?author1 ?author2 WHERE {
+ ?author1 rdf:type core:Authorship .
+ ?author2 rdf:type core:Authorship .
+ ?author1 core:relates ?infor .
+ ?author2 core:relates ?infor .
+ ?infor rdf:type obo:IAO_0000030 .
+ FILTER (str(?author1) < str(?author2))
+ }
+
+ Unique co-author linkages (${fn:length(discoauthors.rows)})
+
+
+
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ SELECT (count(*) as ?counts) WHERE {
+ ?grant core:relates ?pi1 .
+ ?pi1 rdf:type core:InvestigatorRole .
+ ?grant core:relates ?pi2 .
+ ?pi1 rdf:type core:InvestigatorRole .
+ FILTER (str(?pi1) < str(?pi2))
+ }
+
+
+ Total co-investigator linkages (${copi.counts.string})
+
+
+
+
+
+
+
+
+ PREFIX rdfs:
+ PREFIX rdf:
+ PREFIX akt:
+ PREFIX bibo:
+ PREFIX core:
+ SELECT DISTINCT ?pi1 ?pi2 WHERE {
+ ?grant core:relates ?pi1 .
+ ?pi1 rdf:type core:InvestigatorRole .
+ ?grant core:relates ?pi2 .
+ ?pi1 rdf:type core:InvestigatorRole .
+ FILTER (str(?pi1) < str(?pi2))
+ }
+
+ Unique co-investigator linkages (${fn:length(discopis.rows)})
+
+
+
+
+
+
diff --git a/productMods/js/homePageMaps.js b/productMods/js/homePageMaps.js
index 06283d1e..c41b6fbc 100644
--- a/productMods/js/homePageMaps.js
+++ b/productMods/js/homePageMaps.js
@@ -6,11 +6,12 @@ $(document).ready(function(){
var countryMapBuilt = false;
var localMapBuilt = false;
var researchAreas = { "type": "FeatureCollection", "features": []};
+ var geoResearcherCount = "0";
$.extend(this, urlsBase);
$.extend(this, i18nStrings);
- $.extend(this, geoResearcherCount);
+ getGeoFocusResearcherCount();
getGeoJsonForMaps();
$('a#globalLink').click(function() {
@@ -367,9 +368,26 @@ $(document).ready(function(){
});
}
+ function getGeoFocusResearcherCount() {
+ $.ajax({
+ url: urlsBase + "/homePageAjax",
+ dataType: "json",
+ data: {
+ action: "getGeoFocusResearcherCount",
+ },
+ complete: function(xhr, status) {
+
+ var results = $.parseJSON(xhr.responseText);
+ // there will only ever be one key/value pair
+ if ( results != null ) {
+ geoResearcherCount = results.count;
+ }
+ }
+ });
+ }
+
function getResearcherCount(area) {
- var researcherCount = this.geoResearcherCount;
var areaCount = 0;
var text = "";
if ( area == "global" ) {
@@ -391,7 +409,7 @@ $(document).ready(function(){
if ( areaCount == 1 && text == " states.") {
text = " " + i18nStrings.stateString;
}
- if ( researcherCount == 1 ) {
+ if ( geoResearcherCount == 1 ) {
researcherText = " " + i18nStrings.researcherString + " " + i18nStrings.inString;
}
else {
@@ -399,7 +417,7 @@ $(document).ready(function(){
}
$('div#researcherTotal').html(""
- + researcherCount
+ + geoResearcherCount
+ " " + researcherText + " "
+ areaCount + " " + text);
}
diff --git a/productMods/templates/freemarker/body/accounts/userAccounts-acctCreatedEmail.ftl b/productMods/templates/freemarker/body/accounts/userAccounts-acctCreatedEmail.ftl
deleted file mode 100644
index 25226e78..00000000
--- a/productMods/templates/freemarker/body/accounts/userAccounts-acctCreatedEmail.ftl
+++ /dev/null
@@ -1,64 +0,0 @@
-<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-
-<#-- Confirmation that an account has been created. -->
-
-<#assign subject = "${i18n().account_created_subject(siteName)}" />
-
-<#assign html>
-
-
- ${subject}
-
-
-
- ${userAccount.firstName} ${userAccount.lastName}
-
-
-
- ${i18n().congratulations}
-
-
-
- ${i18n().we_have_created_your_account(siteName,userAccount.emailAddress)}
-
-
-
- ${i18n().did_not_request_text}
-
-
-
- ${i18n().click_to_create_password}
-
-
-
- ${passwordLink}
-
-
-
- ${i18n().if_link_failed}
-
-
-
- ${i18n().thanks}
-
-
-
-#assign>
-
-<#assign text>
-${userAccount.firstName} ${userAccount.lastName}
-
-${i18n().congratulations}
-
-${i18n().we_have_created_your_account(siteName,userAccount.emailAddress)}
-
-${i18n().did_not_request_text}
-
-${i18n().paste_the_link}
-
-${passwordLink}
-
-${i18n().thanks}
-#assign>
-
-<@email subject=subject html=html text=text />
\ No newline at end of file
diff --git a/themes/wilma/templates/individual-openSocial.ftl b/productMods/templates/freemarker/body/individual/individual-openSocial.ftl
similarity index 100%
rename from themes/wilma/templates/individual-openSocial.ftl
rename to productMods/templates/freemarker/body/individual/individual-openSocial.ftl
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-adviseeIn.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-adviseeIn.ftl
index 780765d4..f0fc41b8 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-adviseeIn.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-adviseeIn.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#mailingAddress.
+<#-- Custom object property statement view for faux property "advisee of". See the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-advisorIn.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-advisorIn.ftl
index 341c3299..88e310c0 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-advisorIn.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-advisorIn.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#mailingAddress.
+<#-- Custom object property statement view for faux property "advisees". See the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-authorInAuthorship.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-authorInAuthorship.ftl
index b8cd6c1c..52638212 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-authorInAuthorship.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-authorInAuthorship.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#authorInAuthorship.
+<#-- Custom object property statement view for faux property "selected publications". See the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-awardOrHonor.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-awardOrHonor.ftl
index 9c61e94a..6f4943e9 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-awardOrHonor.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-awardOrHonor.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#awardOrHonor.
+<#-- Custom object property statement view for faux property "awards and honors". See the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-editorship.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-editorship.ftl
index 2f2f4bda..1e04bde5 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-editorship.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-editorship.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#authorInEditorship.
+<#-- Custom object property statement view for faux property "editor of". See the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-educationalTraining.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-educationalTraining.ftl
index 3521a717..d81062bd 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-educationalTraining.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-educationalTraining.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#educationalTraining.
+<#-- Custom object property statement view for faux property "education and training". See the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-grantAdministeredBy.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-grantAdministeredBy.ftl
new file mode 100644
index 00000000..08cd3d98
--- /dev/null
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-grantAdministeredBy.ftl
@@ -0,0 +1,26 @@
+<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
+
+<#--
+
+ 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.
+ -->
+<#import "lib-sequence.ftl" as s>
+<#import "lib-datetime.ftl" as dt>
+<@showAdministrator statement />
+
+<#-- Use a macro to keep variable assignments local; otherwise the values carry over to the
+ next statement -->
+<#macro showAdministrator statement>
+
+ <#local linkedIndividual>
+ <#if statement.organization??>
+ ${statement.organizationLabel!""}
+ <#else>
+ ${i18n().missing_organization}
+ #if>
+ #local>
+
+ ${linkedIndividual!}
+
+ #macro>
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-hasAttendeeRole.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-hasAttendeeRole.ftl
index 0c948b3e..9035f684 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-hasAttendeeRole.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-hasAttendeeRole.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#hasAttendeeRole.
+<#-- Custom object property statement view for faux property "attended". See the PropertyConfig.3 file for details..
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-hasEditReviewRole.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-hasEditReviewRole.ftl
index 6ead71df..74ef1621 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-hasEditReviewRole.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-hasEditReviewRole.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for core:hasEditorRole and core:hasReviewerRole.
+<#-- Custom object property statement view for faux property "reviewer of". See the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-hasInvestigatorRole.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-hasInvestigatorRole.ftl
index d458c4dd..84de10ae 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-hasInvestigatorRole.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-hasInvestigatorRole.ftl
@@ -1,6 +1,7 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#hasRole and its child properties.
+<#-- Custom object property statement view for faux property "investigator on," "principal investigator on" and
+ "co-principal investigator on." See the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-hasPresenterRole.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-hasPresenterRole.ftl
index 0c19e9b4..c1068d2d 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-hasPresenterRole.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-hasPresenterRole.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#hasPresenterRole.
+<#-- Custom object property statement view for faux property "presentations". See the PropertyConfig.3 file for details.
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.
@@ -16,7 +16,7 @@
<#macro showRole statement>
<#local linkedIndividual>
<#if statement.presentation??>
- ${statement.presentationLabel!statement.presentationName}
+ ${statement.presentationLabel!statement.presentationName!""}
<#else>
<#-- This shouldn't happen, but we must provide for it -->
${i18n().missing_presentation}
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-hasRole.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-hasRole.ftl
index fca3b9dd..c89de407 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-hasRole.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-hasRole.ftl
@@ -1,6 +1,7 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#hasRole and its child properties.
+<#-- Custom object property statement view for the roleRealizedIn, roleContributesTo, researchActivities, hasRole
+ and hasClinicalActivities custom list views. See those list view and the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-informationResourceInAuthorship.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-informationResourceInAuthorship.ftl
index 06978922..df612dfe 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-informationResourceInAuthorship.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-informationResourceInAuthorship.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#informationResourceInAuthorship.
+<#-- Custom object property statement view for faux property "authors". See the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-informationResourceInEditorship.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-informationResourceInEditorship.ftl
index 3d6c16e3..93bb908d 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-informationResourceInEditorship.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-informationResourceInEditorship.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#informationResourceInAuthorship.
+<#-- Custom object property statement view for faux property "editors". See the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-issuedCredential.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-issuedCredential.ftl
index 1b12358a..0f3c9398 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-issuedCredential.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-issuedCredential.ftl
@@ -17,7 +17,7 @@
<#if statement.credential??>
${statement.credentialLabel!statement.issuedCredentialLabel!statement.credentialLocal!}
<#else>
- ${statement.issuedCredentialLabel!"missing credential"}
+ ${statement.issuedCredentialLabel!"${i18n().missing_credential}"}
#if>
#local>
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-mailingAddress.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-mailingAddress.ftl
index f5a45eec..6375a22f 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-mailingAddress.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-mailingAddress.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#mailingAddress.
+<#-- Custom object property statement view for faux property "mailing address". See the PropertyConfig.3 file for details.
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.
@@ -13,9 +13,17 @@
<#macro showAddress statement>
<#if statement.street?has_content>
-
- ${statement.street}
-
+ <#if statement.street?contains(";") >
+ <#list statement.street?split("; ") as lines>
+
+ ${lines}
+
+ #list>
+ <#else>
+
+ ${statement.street}
+
+ #if>
#if>
<#if ( statement.country?has_content && (statement.country == "US" || statement.country?contains("United States") || statement.country?contains("U.S.") || statement.country?contains("U.S.A.") || statement.country?contains("USA")))>
@@ -23,7 +31,7 @@
<#local cityStateZip><@s.join [ cityState!, statement.postalCode!], " " />#local>
<#if cityStateZip?has_content>
${cityStateZip}
- ${statement.country!}
+ ${statement.country!}
#if>
<#else>
<#if statement.locality?has_content>
@@ -42,7 +50,7 @@
#if>
<#if statement.country?has_content>
-
+
${statement.country}
#if>
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-organizationForPosition.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-organizationForPosition.ftl
index d5719b82..3d877560 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-organizationForPosition.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-organizationForPosition.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#organizationForPosition.
+<#-- Custom object property statement view for faux property "people". See the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-organizationForTraining.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-organizationForTraining.ftl
index 4ad826c2..711d2ee7 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-organizationForTraining.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-organizationForTraining.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#organizationForPosition.
+<#-- Custom object property statement view for faux property "organization for training". See the PropertyConfig.3 file for details.
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.
@@ -19,18 +19,20 @@
${statement.personName}
<#else>
<#-- This shouldn't happen, but we must provide for it -->
- ${i18n().missing_person_in_posn}
+ ${i18n().missing_person_in_posn}
#if>
#local>
<#local detailedInfo>
<#if statement.degree??>
- ${statement.degreeAbbr!} ${i18n().in} ${statement.field!}
- <#elseif statement.field??>
- ${statement.field!}, ${statement.suppInfo!}
+ ${statement.degreeAbbr!} <#if statement.majorField??> ${i18n().in} ${statement.majorField!} #if>
+ <#elseif statement.majorField??>
+ ${statement.majorField!}, ${statement.info!}
<#else>
- ${statement.suppInfo!}
+ ${statement.info!}
#if>
#local>
- <@s.join [ linkedIndividual, detailedInfo ] /> <@dt.yearIntervalSpan "${statement.dateTimeStart!}" "${statement.dateTimeEnd!}" />
+ <@s.join [ linkedIndividual, detailedInfo ] />
+
+#macro>
+
-#macro>
\ No newline at end of file
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-personInPosition.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-personInPosition.ftl
index fa0afb41..e6aebc47 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-personInPosition.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-personInPosition.ftl
@@ -1,6 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#personInPosition.
+<#-- Custom object property statement view for faux property "positions". See the PropertyConfig.3 file for details.
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.
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-relatedRole.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-relatedRole.ftl
index e11838f0..21187494 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-relatedRole.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-relatedRole.ftl
@@ -1,8 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#relatedRole and
- http://vivoweb.org/ontology/core#linkedRole.
-
+<#--
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.
-->
diff --git a/productMods/templates/freemarker/body/partials/individual/propStatement-researchAreaOf.ftl b/productMods/templates/freemarker/body/partials/individual/propStatement-researchAreaOf.ftl
index 9e589c10..3059fd1b 100644
--- a/productMods/templates/freemarker/body/partials/individual/propStatement-researchAreaOf.ftl
+++ b/productMods/templates/freemarker/body/partials/individual/propStatement-researchAreaOf.ftl
@@ -1,7 +1,6 @@
<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#-- Custom object property statement view for http://vivoweb.org/ontology/core#organizationForPosition.
-
+<#--
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.
-->
diff --git a/productMods/templates/freemarker/edit/forms/addAssociatedConcept.ftl b/productMods/templates/freemarker/edit/forms/addAssociatedConcept.ftl
index ee613943..fe1f81c6 100644
--- a/productMods/templates/freemarker/edit/forms/addAssociatedConcept.ftl
+++ b/productMods/templates/freemarker/edit/forms/addAssociatedConcept.ftl
@@ -66,6 +66,9 @@
<#if existingConcept.vocabURI?has_content && existingConcept.vocabLabel?has_content>
${existingConcept.vocabLabel}
+ <#else>
+
+ <#--We still want the column to be there even if no vocabulary source is present-->
#if>
diff --git a/productMods/templates/freemarker/edit/forms/addClinicalRoleToPerson.ftl b/productMods/templates/freemarker/edit/forms/addClinicalRoleToPerson.ftl
index affa452e..0599c096 100644
--- a/productMods/templates/freemarker/edit/forms/addClinicalRoleToPerson.ftl
+++ b/productMods/templates/freemarker/edit/forms/addClinicalRoleToPerson.ftl
@@ -1,35 +1,35 @@
-<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
-<#--Two stage form for clinical role-->
-
-<#--
-Required Values to be set for each form that includes addRoleToPersonTwoStage.ftl are:
-roleDescriptor.
-The other required values (roleType, optionsType, objectClassUri, and literalOptions are
-set in the JAVA class corresponding to the form, e.g. AddClinicalRoleToPersonGenerator.java.
-
-Optional values can be set in Freemarker, but each of these has default values
-set in addRoleToPersonTwoStage.ftl:
-
-buttonText
-typeSelectorLabel
-numDateFields
-roleExamples
-
-Optional values set in JAVA include
-ShowRoleLabelField
-ActivityToRolePredicate
-RoleToActivityPredicate
--->
-
-
-<#--Variable assignments for Add Clinical Role To Person-->
-<#assign roleDescriptor = "${i18n().clinical_activity}" />
-<#assign typeSelectorLabel = "${i18n().clinical_activity_type}" />
-<#assign genericLabel = "${i18n().clinical_activity?capitalize}" />
-
-<#assign acMultipleTypes = "'true'" />
-<#assign acTypes = "{activity: 'http://vivoweb.org/ontology/core#Project,http://vivoweb.org/ontology/core#Service'}" />
-
-
-<#--Each of the two stage forms will include the form below-->
+<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
+<#--Two stage form for clinical role-->
+
+<#--
+Required Values to be set for each form that includes addRoleToPersonTwoStage.ftl are:
+roleDescriptor.
+The other required values (roleType, optionsType, objectClassUri, and literalOptions are
+set in the JAVA class corresponding to the form, e.g. AddClinicalRoleToPersonGenerator.java.
+
+Optional values can be set in Freemarker, but each of these has default values
+set in addRoleToPersonTwoStage.ftl:
+
+buttonText
+typeSelectorLabel
+numDateFields
+roleExamples
+
+Optional values set in JAVA include
+ShowRoleLabelField
+ActivityToRolePredicate
+RoleToActivityPredicate
+-->
+
+
+<#--Variable assignments for Add Clinical Role To Person-->
+<#assign roleDescriptor = "${i18n().clinical_activity}" />
+<#assign typeSelectorLabel = "${i18n().clinical_activity_type}" />
+<#assign genericLabel = "${i18n().clinical_activity?capitalize}" />
+
+<#assign acMultipleTypes = "'true'" />
+<#assign acTypes = "{activity: 'http://vivoweb.org/ontology/core#Project,http://purl.obolibrary.org/obo/ERO_0000005'}" />
+
+
+<#--Each of the two stage forms will include the form below-->
<#include "addRoleToPersonTwoStage.ftl">
\ No newline at end of file
diff --git a/productMods/templates/freemarker/edit/forms/addConceptThroughObjectPropertyAutoComplete.ftl b/productMods/templates/freemarker/edit/forms/addConceptThroughObjectPropertyAutoComplete.ftl
new file mode 100644
index 00000000..9d92cefa
--- /dev/null
+++ b/productMods/templates/freemarker/edit/forms/addConceptThroughObjectPropertyAutoComplete.ftl
@@ -0,0 +1,145 @@
+<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
+<#--Assign variables from editConfig-->
+<#assign rangeOptions = editConfiguration.pageData.objectVar />
+<#--
+<#assign rangeOptionsExist = false />
+<#if (rangeOptions?keys?size > 0)>
+ <#assign rangeOptionsExist = true/>
+#if>
+ -->
+
+<#assign rangeOptionsExist = true />
+
+<#assign objectTypes = editConfiguration.pageData.objectTypes />
+<#assign objectTypesSize = objectTypes?length />
+<#assign objectTypesExist = false />
+<#assign multipleTypes = false />
+<#if (objectTypesSize > 1)>
+ <#assign objectTypesExist = true />
+#if>
+<#if objectTypes?contains(",")>
+ <#assign multipleTypes = true/>
+#if>
+<#assign sparqlForAcFilter = editConfiguration.pageData.sparqlForAcFilter />
+<#assign editMode = editConfiguration.pageData.editMode />
+<#assign propertyNameForDisplay = "" />
+<#if editConfiguration.objectPropertyNameForDisplay?has_content>
+ <#assign propertyNameForDisplay = editConfiguration.objectPropertyNameForDisplay />
+#if>
+<#if editMode = "edit" >
+ <#assign titleVerb = "${i18n().edit_capitalized}" />
+ <#assign objectLabel = editConfiguration.pageData.objectLabel />
+ <#assign selectedObjectUri = editConfiguration.objectUri />
+ <#assign submitButtonText = "${i18n().save_button}" />
+<#else>
+ <#assign titleVerb = "${i18n().add_capitalized}" >
+ <#assign objectLabel = "" />
+ <#assign selectedObjectUri = ""/>
+ <#assign submitButtonText = "${i18n().create_entry}" />
+#if>
+
+<#if editConfiguration.formTitle?contains("collaborator") >
+ <#assign formTitle = "${i18n().select_existing_collaborator(editConfiguration.subjectName)}" />
+<#else>
+ <#assign formTitle = editConfiguration.formTitle />
+#if>
+<#--In order to fill out the subject-->
+<#assign acFilterForIndividuals = "['" + editConfiguration.subjectUri + "']" />
+
+
${formTitle}
+
+<#if editConfiguration.propertySelectFromExisting = true>
+ <#if rangeOptionsExist = true >
+
+ <#else>
+
${i18n().there_are_no_entries_for_selection}
+ #if>
+#if>
+
+<#if editConfiguration.propertyOfferCreateNewOption = true>
+<#include "addConceptThroughObjectPropertyCreateNew.ftl">
+
+#if>
+
+<#if editConfiguration.propertySelectFromExisting = false && editConfiguration.propertyOfferCreateNewOption = false>
+
${i18n().editing_prohibited}
+#if>
+
+
+<#if editConfiguration.includeDeletionForm = true>
+<#include "defaultDeletePropertyForm.ftl">
+#if>
+
+
+<#assign sparqlQueryUrl = "${urls.base}/ajax/sparqlQuery" >
+<#--Passing in object types only if there are any types returned, otherwise
+the parameter should not be passed at all to the solr search.
+Also multiple types parameter set to true only if more than one type returned-->
+
+<#--
+ edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.AutocompleteObjectPropertyFormGenerator
+ edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.AddAttendeeRoleToPersonGenerator
+-->
+
+${stylesheets.add('
')}
+ ${stylesheets.add('
')}
+ ${stylesheets.add('
')}
+
+
+ ${scripts.add('',
+ '',
+ '',
+ '')}
diff --git a/productMods/templates/freemarker/edit/forms/addConceptThroughObjectPropertyCreateNew.ftl b/productMods/templates/freemarker/edit/forms/addConceptThroughObjectPropertyCreateNew.ftl
new file mode 100644
index 00000000..9efc361b
--- /dev/null
+++ b/productMods/templates/freemarker/edit/forms/addConceptThroughObjectPropertyCreateNew.ftl
@@ -0,0 +1,35 @@
+<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
+<#--Overriding default form here to allow just concepts to show in the list-->
+
+ <#if rangeOptionsExist = true >
+
${i18n().no_appropriate_entry}:
+ <#else>
+
${i18n().create_new_entry}
+ #if>
+
+ <#if editConfiguration.objectUri?has_content>
+ <#assign objectUri = editConfiguration.objectUri>
+ <#else>
+ <#assign objectUri = ""/>
+ #if>
+
+ <#assign typesList = editConfiguration.pageData.createNewTypes/>
+
+
+
+
+
+
+
+ <#assign typeKeys = typesList?keys />
+ <#list typeKeys as typeKey>
+ ${typesList[typeKey]}
+ #list>
+
+
+
+ <#if rangeOptionsExist = false >
+
${i18n().or}
+
${i18n().cancel_link}
+ #if>
+
\ No newline at end of file
diff --git a/productMods/templates/freemarker/edit/forms/addConceptThroughObjectPropertyForm.ftl b/productMods/templates/freemarker/edit/forms/addConceptThroughObjectPropertyForm.ftl
new file mode 100644
index 00000000..89b5ddc4
--- /dev/null
+++ b/productMods/templates/freemarker/edit/forms/addConceptThroughObjectPropertyForm.ftl
@@ -0,0 +1,49 @@
+<#-- $This file is distributed under the terms of the license in /doc/license.txt$ -->
+
+<#--Assign variables from editConfig-->
+<#assign rangeOptions = editConfiguration.pageData.objectVar />
+<#assign rangeOptionsExist = false />
+<#if (rangeOptions?keys?size > 0)>
+ <#assign rangeOptionsExist = true/>
+#if>
+
+
${editConfiguration.formTitle}
+
+<#if editConfiguration.propertySelectFromExisting = true>
+ <#if rangeOptionsExist = true >
+ <#assign rangeOptionKeys = rangeOptions?keys />
+
+ <#else>
+
${i18n().there_are_no_entries_for_selection}
+ #if>
+#if>
+
+<#if editConfiguration.propertyOfferCreateNewOption = true>
+<#include "addConceptThroughObjectPropertyCreateNew.ftl">
+#if>
+
+<#if editConfiguration.propertySelectFromExisting = false && editConfiguration.propertyOfferCreateNewOption = false>
+
${i18n().editing_prohibited}
+#if>
+
+
+<#if editConfiguration.includeDeletionForm = true>
+<#include "defaultDeletePropertyForm.ftl">
+#if>
+
diff --git a/productMods/templates/freemarker/edit/forms/addFullNameToPerson.ftl b/productMods/templates/freemarker/edit/forms/addFullNameToPerson.ftl
index 3956993c..23a3f0ea 100644
--- a/productMods/templates/freemarker/edit/forms/addFullNameToPerson.ftl
+++ b/productMods/templates/freemarker/edit/forms/addFullNameToPerson.ftl
@@ -65,13 +65,13 @@