Merge branch 'develop' into feature/fauxEditing

This commit is contained in:
j2blake 2014-12-08 15:56:43 -05:00
commit 131f0a8c03
14 changed files with 116 additions and 34 deletions

View file

@ -3,33 +3,38 @@
:application :application
a <java:edu.cornell.mannlib.vitro.webapp.application.ApplicationImpl> , a <java:edu.cornell.mannlib.vitro.webapp.application.ApplicationImpl> ,
<java:edu.cornell.mannlib.vitro.webapp.modules.Application> ; <java:edu.cornell.mannlib.vitro.webapp.modules.Application> ;
:hasSearchEngine :searchEngineWrapper ; :hasSearchEngine :instrumentedSearchEngineWrapper ;
:hasImageProcessor :imageProcessor ; :hasImageProcessor :jaiImageProcessor ;
:hasFileStorage :fileStorage ; :hasFileStorage :ptiFileStorage ;
:hasContentTripleSource :contentTripleSource ; :hasContentTripleSource :sdbContentTripleSource ;
:hasConfigurationTripleSource :configurationTripleSource . :hasConfigurationTripleSource :tdbConfigurationTripleSource ;
:hasTBoxReasonerModule :pelletTBoxReasonerModule .
:imageProcessor :jaiImageProcessor
a <java:edu.cornell.mannlib.vitro.webapp.imageprocessor.jai.JaiImageProcessor> , a <java:edu.cornell.mannlib.vitro.webapp.imageprocessor.jai.JaiImageProcessor> ,
<java:edu.cornell.mannlib.vitro.webapp.modules.imageProcessor.ImageProcessor> . <java:edu.cornell.mannlib.vitro.webapp.modules.imageProcessor.ImageProcessor> .
:fileStorage :ptiFileStorage
a <java:edu.cornell.mannlib.vitro.webapp.filestorage.impl.FileStorageImplWrapper> , a <java:edu.cornell.mannlib.vitro.webapp.filestorage.impl.FileStorageImplWrapper> ,
<java:edu.cornell.mannlib.vitro.webapp.modules.fileStorage.FileStorage> . <java:edu.cornell.mannlib.vitro.webapp.modules.fileStorage.FileStorage> .
:searchEngineWrapper :instrumentedSearchEngineWrapper
a <java:edu.cornell.mannlib.vitro.webapp.searchengine.InstrumentedSearchEngineWrapper> , a <java:edu.cornell.mannlib.vitro.webapp.searchengine.InstrumentedSearchEngineWrapper> ,
<java:edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchEngine> ; <java:edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchEngine> ;
:wraps :searchEngine . :wraps :solrSearchEngine .
:searchEngine :solrSearchEngine
a <java:edu.cornell.mannlib.vitro.webapp.searchengine.solr.SolrSearchEngine> , a <java:edu.cornell.mannlib.vitro.webapp.searchengine.solr.SolrSearchEngine> ,
<java:edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchEngine> . <java:edu.cornell.mannlib.vitro.webapp.modules.searchEngine.SearchEngine> .
:contentTripleSource :sdbContentTripleSource
a <java:edu.cornell.mannlib.vitro.webapp.triplesource.impl.sdb.ContentTripleSourceSDB> , a <java:edu.cornell.mannlib.vitro.webapp.triplesource.impl.sdb.ContentTripleSourceSDB> ,
<java:edu.cornell.mannlib.vitro.webapp.modules.tripleSource.ContentTripleSource> . <java:edu.cornell.mannlib.vitro.webapp.modules.tripleSource.ContentTripleSource> .
:configurationTripleSource :tdbConfigurationTripleSource
a <java:edu.cornell.mannlib.vitro.webapp.triplesource.impl.tdb.ConfigurationTripleSourceTDB> , a <java:edu.cornell.mannlib.vitro.webapp.triplesource.impl.tdb.ConfigurationTripleSourceTDB> ,
<java:edu.cornell.mannlib.vitro.webapp.modules.tripleSource.ConfigurationTripleSource> . <java:edu.cornell.mannlib.vitro.webapp.modules.tripleSource.ConfigurationTripleSource> .
:pelletTBoxReasonerModule
a <java:edu.cornell.mannlib.vitro.webapp.tboxreasoner.impl.pellet.PelletTBoxReasonerModule> ,
<java:edu.cornell.mannlib.vitro.webapp.modules.tboxreasoner.TBoxReasonerModule> .

View file

@ -37,6 +37,7 @@ edu.cornell.mannlib.vitro.webapp.servlet.setup.FileGraphSetup
# Invokes process to perform updates to align with ontology changes if needed --> # Invokes process to perform updates to align with ontology changes if needed -->
edu.cornell.mannlib.vitro.webapp.servlet.setup.UpdateKnowledgeBase edu.cornell.mannlib.vitro.webapp.servlet.setup.UpdateKnowledgeBase
edu.cornell.mannlib.vitro.webapp.application.ApplicationImpl$ReasonersSetup
edu.cornell.mannlib.vitro.webapp.servlet.setup.SimpleReasonerSetup edu.cornell.mannlib.vitro.webapp.servlet.setup.SimpleReasonerSetup
# Must run after JenaDataSourceSetup # Must run after JenaDataSourceSetup

View file

@ -134,7 +134,7 @@ $(document).ready(function(){
//Check to see if this index hasn't already been employed //Check to see if this index hasn't already been employed
if(!indexFound) { if(!indexFound) {
//if this index hasn't already been employed then utilize it //if this index hasn't already been employed then utilize it
html += "<li><a href='" + urlsBase + "/individual" html += "<li><a href='" + urlsBase + "/individual?uri="
+ academicDepartments[index].uri + "'>" + academicDepartments[index].uri + "'>"
+ academicDepartments[index].name + "</a></li>"; + academicDepartments[index].name + "</a></li>";
//add this index to the set of already used indices //add this index to the set of already used indices
@ -146,7 +146,7 @@ $(document).ready(function(){
} }
else { else {
for ( var i=0;i<deptNbr;i++) { for ( var i=0;i<deptNbr;i++) {
html += "<li><a href='" + urlsBase + "/individual" html += "<li><a href='" + urlsBase + "/individual?uri="
+ academicDepartments[i].uri + "'>" + academicDepartments[i].uri + "'>"
+ academicDepartments[i].name + "</a></li>"; + academicDepartments[i].name + "</a></li>";
} }

View file

@ -23,7 +23,7 @@
<#assign visRequestingTemplate = "foaf-person-2column"> <#assign visRequestingTemplate = "foaf-person-2column">
<#--add the VIVO-ORCID interface --> <#--add the VIVO-ORCID interface -->
<#include "individual-orcidInterface.ftl"> <#include "individual-orcidInterface.ftl">
<section id="individual-intro" class="vcard person" role="region"> <section itemscope itemtype="http://schema.org/Person" id="individual-intro" class="vcard person" role="region">
<section id="share-contact" role="region"> <section id="share-contact" role="region">
<#-- Image --> <#-- Image -->
<#assign individualImage> <#assign individualImage>

View file

@ -51,7 +51,7 @@
</#if> </#if>
</#if> </#if>
</#if> </#if>
<section id="individual-intro" class="vcard person" role="region"> <section itemscope itemtype="http://schema.org/Person" id="individual-intro" class="vcard person" role="region">
<section id="label-title" <#if editable>style="width:45%"</#if> > <section id="label-title" <#if editable>style="width:45%"</#if> >
<header> <header>
<#if relatedSubject??> <#if relatedSubject??>

View file

@ -39,7 +39,7 @@
<ul id="phone-list" role="list"> <ul id="phone-list" role="list">
<#list phone.statements as statement> <#list phone.statements as statement>
<li role="listitem" <#if editable>style="padding-left:10px;"</#if>> <li role="listitem" <#if editable>style="padding-left:10px;"</#if>>
${statement.number!} <span itemprop="telephone">${statement.number!}</span>
<@p.editingLinks "${phone.localName}" "${phone.name}" statement editable phone.rangeUri /> <@p.editingLinks "${phone.localName}" "${phone.name}" statement editable phone.rangeUri />
</li> </li>
</#list> </#list>
@ -65,7 +65,7 @@
<#list email.statements as statement> <#list email.statements as statement>
<li role="listitem" <#if editable>style="padding-left:10px;"</#if>> <li role="listitem" <#if editable>style="padding-left:10px;"</#if>>
<a class="email" href="mailto:${statement.emailAddress!}" title="${i18n().email}">${statement.emailAddress!}</a> <a itemprop="email" class="email" href="mailto:${statement.emailAddress!}" title="${i18n().email}">${statement.emailAddress!}</a>
<@p.editingLinks "${email.localName}" "${email.name}" statement editable email.rangeUri /> <@p.editingLinks "${email.localName}" "${email.name}" statement editable email.rangeUri />
</li> </li>
</#list> </#list>

View file

@ -24,7 +24,7 @@
<ul id="individual-phone" role="list" <#if editable>style="list-style:none;margin-left:0;"</#if>> <ul id="individual-phone" role="list" <#if editable>style="list-style:none;margin-left:0;"</#if>>
<#list phone.statements as statement> <#list phone.statements as statement>
<li role="listitem"> <li role="listitem">
${statement.number!} <span itemprop="telephone">${statement.number!}</span>
<@p.editingLinks "${phone.localName}" "${phone.name}" statement editable phone.rangeUri /> <@p.editingLinks "${phone.localName}" "${phone.name}" statement editable phone.rangeUri />
</li> </li>
</#list> </#list>
@ -46,7 +46,7 @@
<ul id="${listId}" class="individual-emails" role="list" <#if editable>style="list-style:none;margin-left:0;"</#if>> <ul id="${listId}" class="individual-emails" role="list" <#if editable>style="list-style:none;margin-left:0;"</#if>>
<#list email.statements as statement> <#list email.statements as statement>
<li role="listitem"> <li role="listitem">
<a class="email" href="mailto:${statement.emailAddress!}" title="${i18n().email}">${statement.emailAddress!}</a> <a itemprop="email" class="email" href="mailto:${statement.emailAddress!}" title="${i18n().email}">${statement.emailAddress!}</a>
<@p.editingLinks "${email.localName}" "${email.name}" statement editable email.rangeUri /> <@p.editingLinks "${email.localName}" "${email.name}" statement editable email.rangeUri />
</li> </li>
</#list> </#list>

View file

@ -8,15 +8,21 @@
<#import "lib-sequence.ftl" as s> <#import "lib-sequence.ftl" as s>
<#import "lib-datetime.ftl" as dt> <#import "lib-datetime.ftl" as dt>
<@showPosition statement /> <@showPosition statement />
<#-- Use a macro to keep variable assignments local; otherwise the values carry over to the <#-- Use a macro to keep variable assignments local; otherwise the values carry over to the
next statement --> next statement -->
<#macro showPosition statement> <#macro showPosition statement>
<#local posTitle>
<span itemprop="jobTitle">${statement.positionTitle!statement.hrJobTitle!}</span>
</#local>
<#local linkedIndividual> <#local linkedIndividual>
<#if statement.org??> <#if statement.org??>
<a href="${profileUrl(statement.uri("org"))}" title="${i18n().organization_name}">${statement.orgName}</a> <span itemprop="worksFor" itemscope itemtype="http://schema.org/Organization">
<a itemprop="name" href="${profileUrl(statement.uri("org"))}" title="${i18n().organization_name}">${statement.orgName}</a>
</span>
<#else> <#else>
<#-- This shouldn't happen, but we must provide for it --> <#-- This shouldn't happen, but we must provide for it -->
<a href="${profileUrl(statement.uri("position"))}" title="${i18n().missing_organization}">${i18n().missing_organization}</a> <a href="${profileUrl(statement.uri("position"))}" title="${i18n().missing_organization}">${i18n().missing_organization}</a>
@ -26,10 +32,12 @@
For now, we are only displaying the parent in the list view. --> For now, we are only displaying the parent in the list view. -->
<#local middleOrganization> <#local middleOrganization>
<#if statement.middleOrg??> <#if statement.middleOrg??>
<a href="${profileUrl(statement.uri("middleOrg"))}" title="${i18n().middle_organization}">${statement.middleOrgName!}</a> <span itemprop="worksFor" itemscope itemtype="http://schema.org/Organization">
<a itemprop="name" href="${profileUrl(statement.uri("middleOrg"))}" title="${i18n().middle_organization}">${statement.middleOrgName!}</a>
</span>
</#if> </#if>
</#local> </#local>
<@s.join [ statement.positionTitle!statement.hrJobTitle!, linkedIndividual, middleOrganization! ]/> <@dt.yearIntervalSpan "${statement.dateTimeStart!}" "${statement.dateTimeEnd!}" /> <@s.join [ posTitle, linkedIndividual, middleOrganization! ]/> <@dt.yearIntervalSpan "${statement.dateTimeStart!}" "${statement.dateTimeEnd!}" />
</#macro> </#macro>

View file

@ -20,7 +20,7 @@ roleExamples-->
<#--Variable assignments for Add Clinical Role To Person--> <#--Variable assignments for Add Clinical Role To Person-->
<#assign roleDescriptor = "${i18n().collection_series_editor_role}" /> <#assign roleDescriptor = "${i18n().collection_series_editor_role}" />
<#assign typeSelectorLabel = "${i18n().editor_role_in}" /> <#assign typeSelectorLabel = "${i18n().editor_role_in}" />
<#assign genericLabel = "Collection" /> <#assign genericLabel = "Collection or Series" />
<#assign acTypes = "{activity: 'http://purl.org/ontology/bibo/Collection'}" /> <#assign acTypes = "{activity: 'http://purl.org/ontology/bibo/Collection'}" />

View file

@ -39,7 +39,7 @@
<#if (class.uri?contains("FacultyMember")) > <#if (class.uri?contains("FacultyMember")) >
<#assign foundClassGroup = true /> <#assign foundClassGroup = true />
<#if (class.individualCount > 0) > <#if (class.individualCount > 0) >
<script>var facultyMemberCount = ${class.individualCount?string?replace(",","")};</script> <script>var facultyMemberCount = ${class.individualCount?string?replace(",","")?replace(".","")};</script>
<#else> <#else>
<script>var facultyMemberCount = 0;</script> <script>var facultyMemberCount = 0;</script>
</#if> </#if>
@ -165,8 +165,7 @@ var academicDepartments = [
<#list academicDeptDG as resultRow> <#list academicDeptDG as resultRow>
<#assign uri = resultRow["theURI"] /> <#assign uri = resultRow["theURI"] />
<#assign label = resultRow["name"] /> <#assign label = resultRow["name"] />
<#assign localName = uri?substring(uri?last_index_of("/")) /> {"uri": "${uri?url}", "name": "${label}"}<#if (resultRow_has_next)>,</#if>
{"uri": "${localName}", "name": "${label}"}<#if (resultRow_has_next)>,</#if>
</#list> </#list>
</#if> </#if>
]; ];

View file

@ -1010,6 +1010,54 @@ local:webpageInfoConfig a :ObjectPropertyDisplayConfig ;
vitro:customEntryFormAnnot "edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.ManageWebpagesForIndividualGenerator"^^<http://www.w3.org/2001/XMLSchema#string> ; vitro:customEntryFormAnnot "edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.ManageWebpagesForIndividualGenerator"^^<http://www.w3.org/2001/XMLSchema#string> ;
:propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupoverview> . :propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupoverview> .
local:webpageSoftwareContext a :ConfigContext ;
:hasConfiguration local:webpageSoftwareConfig ;
:configContextFor <http://purl.obolibrary.org/obo/ARG_2000028> ;
:qualifiedByDomain <http://purl.obolibrary.org/obo/ERO_0000071> ;
:qualifiedByRoot <http://www.w3.org/2006/vcard/ns#Kind> ;
:qualifiedBy <http://www.w3.org/2006/vcard/ns#URL> .
local:webpageSoftwareConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
:displayName "webpage" ;
vitro:displayRankAnnot 40;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
vitro:prohibitedFromUpdateBelowRoleLevelAnnot role:public ;
vitro:customEntryFormAnnot "edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.ManageWebpagesForIndividualGenerator"^^<http://www.w3.org/2001/XMLSchema#string> ;
:propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupoverview> .
local:webpageFacilityContext a :ConfigContext ;
:hasConfiguration local:webpageFacilityConfig ;
:configContextFor <http://purl.obolibrary.org/obo/ARG_2000028> ;
:qualifiedByDomain <http://vivoweb.org/ontology/core#Facility> ;
:qualifiedByRoot <http://www.w3.org/2006/vcard/ns#Kind> ;
:qualifiedBy <http://www.w3.org/2006/vcard/ns#URL> .
local:webpageFacilityConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
:displayName "webpage" ;
vitro:displayRankAnnot 40;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
vitro:prohibitedFromUpdateBelowRoleLevelAnnot role:public ;
vitro:customEntryFormAnnot "edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.ManageWebpagesForIndividualGenerator"^^<http://www.w3.org/2001/XMLSchema#string> ;
:propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupoverview> .
local:webpageProjectContext a :ConfigContext ;
:hasConfiguration local:webpageProjectConfig ;
:configContextFor <http://purl.obolibrary.org/obo/ARG_2000028> ;
:qualifiedByDomain <http://vivoweb.org/ontology/core#Project> ;
:qualifiedByRoot <http://www.w3.org/2006/vcard/ns#Kind> ;
:qualifiedBy <http://www.w3.org/2006/vcard/ns#URL> .
local:webpageProjectConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
:displayName "webpage" ;
vitro:displayRankAnnot 40;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
vitro:prohibitedFromUpdateBelowRoleLevelAnnot role:public ;
vitro:customEntryFormAnnot "edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.ManageWebpagesForIndividualGenerator"^^<http://www.w3.org/2001/XMLSchema#string> ;
:propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupoverview> .
local:webpageEventContext a :ConfigContext ; local:webpageEventContext a :ConfigContext ;
:hasConfiguration local:webpageEventConfig ; :hasConfiguration local:webpageEventConfig ;
:configContextFor <http://purl.obolibrary.org/obo/ARG_2000028> ; :configContextFor <http://purl.obolibrary.org/obo/ARG_2000028> ;
@ -1027,6 +1075,22 @@ local:webpageEventConfig a :ObjectPropertyDisplayConfig ;
vitro:customEntryFormAnnot "edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.ManageWebpagesForIndividualGenerator"^^<http://www.w3.org/2001/XMLSchema#string> ; vitro:customEntryFormAnnot "edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.ManageWebpagesForIndividualGenerator"^^<http://www.w3.org/2001/XMLSchema#string> ;
:propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupoverview> . :propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupoverview> .
local:webpageEventSeriesContext a :ConfigContext ;
:hasConfiguration local:webpageEventSeriesConfig ;
:configContextFor <http://purl.obolibrary.org/obo/ARG_2000028> ;
:qualifiedByDomain <http://vivoweb.org/ontology/core#EventSeries> ;
:qualifiedByRoot <http://www.w3.org/2006/vcard/ns#Kind> ;
:qualifiedBy <http://www.w3.org/2006/vcard/ns#URL> .
local:webpageEventSeriesConfig a :ObjectPropertyDisplayConfig ;
:listViewConfigFile "listViewConfig-webpage.xml"^^xsd:string ;
:displayName "webpage" ;
vitro:displayRankAnnot 40;
vitro:hiddenFromDisplayBelowRoleLevelAnnot role:public ;
vitro:prohibitedFromUpdateBelowRoleLevelAnnot role:public ;
vitro:customEntryFormAnnot "edu.cornell.mannlib.vitro.webapp.edit.n3editing.configuration.generators.ManageWebpagesForIndividualGenerator"^^<http://www.w3.org/2001/XMLSchema#string> ;
:propertyGroup <http://vivoweb.org/ontology#vitroPropertyGroupoverview> .
local:fullNameContext a :ConfigContext ; local:fullNameContext a :ConfigContext ;
:hasConfiguration local:fullNameConfig ; :hasConfiguration local:fullNameConfig ;
:configContextFor <http://purl.obolibrary.org/obo/ARG_2000028> ; :configContextFor <http://purl.obolibrary.org/obo/ARG_2000028> ;

View file

@ -53,7 +53,7 @@ public class AddEditorRoleToPersonGenerator extends AddRoleToPersonTwoStageGener
/** Do not show the role label field for the AddEditorRoleToPerson form */ /** Do not show the role label field for the AddEditorRoleToPerson form */
@Override @Override
boolean isShowRoleLabelField() { return false; } boolean isShowRoleLabelField() { return true; }
/* /*
* Use the methods below to change the date/time precision in the * Use the methods below to change the date/time precision in the

View file

@ -37,6 +37,7 @@ public class IndividualTemplateModel extends BaseIndividualTemplateModel {
private static final String CREDENTIAL_CLASS = "http://vivoweb.org/ontology/core#Credential"; private static final String CREDENTIAL_CLASS = "http://vivoweb.org/ontology/core#Credential";
private static final String DTP_CLASS = "http://vivoweb.org/ontology/core#DateTimeValuePrecision"; private static final String DTP_CLASS = "http://vivoweb.org/ontology/core#DateTimeValuePrecision";
private static final String ORGANIZATION_CLASS = FOAF + "Organization"; private static final String ORGANIZATION_CLASS = FOAF + "Organization";
private static final String EVENT_CLASS = "http://purl.org/NET/c4dm/event.owl#Event";
private static final String BASE_VISUALIZATION_URL = private static final String BASE_VISUALIZATION_URL =
UrlBuilder.getUrl(Route.VISUALIZATION_SHORT.path()); UrlBuilder.getUrl(Route.VISUALIZATION_SHORT.path());
@ -79,6 +80,10 @@ public class IndividualTemplateModel extends BaseIndividualTemplateModel {
return isVClass(ORGANIZATION_CLASS); return isVClass(ORGANIZATION_CLASS);
} }
public boolean event() {
return isVClass(EVENT_CLASS);
}
public String coAuthorVisUrl() { public String coAuthorVisUrl() {
String url = BASE_VISUALIZATION_URL + "/" + VisualizationFrameworkConstants.COAUTHORSHIP_VIS_SHORT_URL + "/"; String url = BASE_VISUALIZATION_URL + "/" + VisualizationFrameworkConstants.COAUTHORSHIP_VIS_SHORT_URL + "/";
return getVisUrl(url); return getVisUrl(url);

View file

@ -24,7 +24,7 @@
<#--add the VIVO-ORCID interface --> <#--add the VIVO-ORCID interface -->
<#include "individual-orcidInterface.ftl"> <#include "individual-orcidInterface.ftl">
<section id="individual-intro" class="vcard person" role="region"> <section itemscope itemtype="http://schema.org/Person" id="individual-intro" class="vcard person" role="region">
<section id="share-contact" role="region"> <section id="share-contact" role="region">
<!-- Image --> <!-- Image -->
@ -72,7 +72,7 @@
<#else> <#else>
<h1 class="vcard foaf-person"> <h1 class="vcard foaf-person">
<#-- Label --> <#-- Label -->
<span class="fn"><@p.label individual editable labelCount localesCount/></span> <span itemprop="name" class="fn"><@p.label individual editable labelCount localesCount/></span>
<#-- Display preferredTitle if it exists; otherwise mostSpecificTypes --> <#-- Display preferredTitle if it exists; otherwise mostSpecificTypes -->
<#assign title = propertyGroups.pullProperty("http://purl.obolibrary.org/obo/ARG_2000028","http://www.w3.org/2006/vcard/ns#Title")!> <#assign title = propertyGroups.pullProperty("http://purl.obolibrary.org/obo/ARG_2000028","http://www.w3.org/2006/vcard/ns#Title")!>
@ -84,7 +84,7 @@
<@p.verboseDisplay title /> <@p.verboseDisplay title />
</#if> </#if>
<#list title.statements as statement> <#list title.statements as statement>
<span class="display-title<#if editable>-editable</#if>">${statement.preferredTitle}</span> <span itemprop="jobTitle" class="display-title<#if editable>-editable</#if>">${statement.preferredTitle}</span>
<@p.editingLinks "${title.localName}" "${title.name}" statement editable title.rangeUri /> <@p.editingLinks "${title.localName}" "${title.name}" statement editable title.rangeUri />
</#list> </#list>
</#if> </#if>