2010-04-02 16:15:23 +00:00
|
|
|
<%-- $This file is distributed under the terms of the license in /doc/license.txt$ --%>
|
|
|
|
|
2010-07-06 16:22:26 +00:00
|
|
|
<%@ page import="edu.cornell.mannlib.vitro.webapp.utils.StringUtils" %>
|
|
|
|
|
2010-04-02 16:15:23 +00:00
|
|
|
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
|
|
|
|
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
|
|
|
|
|
|
|
|
<%--
|
2010-04-08 15:19:14 +00:00
|
|
|
This is a custom short view render for educational background.
|
|
|
|
The variable individual is the OBJECT of the property statement to be rendered. --
|
2010-06-24 15:14:07 +00:00
|
|
|
In this JSP that is the Educational Training object, not the Person, Organization or DegreeType
|
2010-04-02 16:15:23 +00:00
|
|
|
--%>
|
|
|
|
|
|
|
|
<c:choose>
|
2010-04-08 15:19:14 +00:00
|
|
|
<c:when test="${!empty individual}">
|
|
|
|
<c:choose>
|
|
|
|
<%-- SUBJECT is a Person --%>
|
2010-07-14 15:27:44 +00:00
|
|
|
<c:when test="${predicateUri == 'http://vivoweb.org/ontology/core#educationalTraining'}">
|
2010-04-08 15:19:14 +00:00
|
|
|
|
2010-07-06 16:22:26 +00:00
|
|
|
<%-- Degree type and major --%>
|
|
|
|
<c:set var="degreeLabel" value="" />
|
2010-07-06 15:28:47 +00:00
|
|
|
<c:set var="degreeType" value="${individual.objectPropertyMap['http://vivoweb.org/ontology/core#degreeEarned'].objectPropertyStatements[0].object}"/>
|
2010-07-06 16:22:26 +00:00
|
|
|
<c:if test="${ !empty degreeType }">
|
|
|
|
<c:set var="degreeAbbr" value="${degreeType.dataPropertyMap['http://vivoweb.org/ontology/core#abbreviation'].dataPropertyStatements[0].data}"/>
|
|
|
|
<c:set var="degreeLabel" value="${!empty degreeAbbr ? degreeAbbr : degreeType.name }" />
|
2010-04-08 15:19:14 +00:00
|
|
|
</c:if>
|
2010-07-06 16:22:26 +00:00
|
|
|
|
|
|
|
<c:set var="degreeMajor" value="${individual.dataPropertyMap['http://vivoweb.org/ontology/core#majorField'].dataPropertyStatements[0].data}"/>
|
|
|
|
|
|
|
|
<c:choose>
|
|
|
|
<c:when test="${ !empty degreeLabel && !empty degreeMajor }">
|
|
|
|
<c:set var="degreeStr" value="${degreeLabel} in ${degreeMajor}" />
|
|
|
|
</c:when>
|
|
|
|
<c:when test="${ !empty degreeLabel}">
|
|
|
|
<c:set var="degreeStr" value="${degreeLabel}" />
|
|
|
|
</c:when>
|
|
|
|
<c:when test="${ !empty degreeMajor }">
|
|
|
|
<c:set var="degreeStr" value="${degreeMajor}" />
|
|
|
|
</c:when>
|
|
|
|
<c:otherwise>
|
|
|
|
<c:set var="degreeStr" value="" />
|
|
|
|
</c:otherwise>
|
|
|
|
</c:choose>
|
|
|
|
|
2010-04-08 15:19:14 +00:00
|
|
|
<%-- Organization granting degree --%>
|
|
|
|
<c:set var="selectedOrganization" value="${individual.objectPropertyMap['http://vivoweb.org/ontology/core#organizationGrantingDegree'].objectPropertyStatements[0].object}"/>
|
|
|
|
<c:if test="${ ! empty selectedOrganization }">
|
|
|
|
<c:url var="selectedOrganizationURL" value="/individual">
|
|
|
|
<c:param name="uri" value="${selectedOrganization.URI}"/>
|
|
|
|
</c:url>
|
|
|
|
<c:set var="selectedOrganizationStr" ><a href='${selectedOrganizationURL}'><p:process>${selectedOrganization.name}</p:process></a></c:set>
|
|
|
|
</c:if>
|
|
|
|
|
|
|
|
<%-- Optional department/school to organization --%>
|
|
|
|
<c:set var="degreeDeptOrSchool" value="${individual.dataPropertyMap['http://vivoweb.org/ontology/core#departmentOrSchool'].dataPropertyStatements[0].data}"/>
|
|
|
|
<c:if test="${ ! empty degreeDeptOrSchool }">
|
|
|
|
</c:if>
|
|
|
|
|
|
|
|
<%-- Year of degree --%>
|
|
|
|
<c:set var="year" value="${individual.dataPropertyMap['http://vivoweb.org/ontology/core#year'].dataPropertyStatements[0].data}"/>
|
|
|
|
|
|
|
|
<%-- Supplemental information --%>
|
2010-07-06 16:22:26 +00:00
|
|
|
<c:set var="degreeSupplementalInfo" value="${individual.dataPropertyMap['http://vivoweb.org/ontology/core#supplementalInformation'].dataPropertyStatements[0].data}"/>
|
2010-04-08 15:19:14 +00:00
|
|
|
|
|
|
|
<%-- Build the output string --%>
|
|
|
|
<c:choose>
|
|
|
|
<c:when test="${ ! empty degreeStr }">
|
|
|
|
${degreeStr}
|
|
|
|
<c:if test="${ ! empty selectedOrganizationStr}">, ${selectedOrganizationStr}</c:if>
|
|
|
|
<c:if test="${ ! empty degreeDeptOrSchool}">, ${degreeDeptOrSchool}</c:if>
|
|
|
|
<c:if test="${ ! empty year }">, ${year}</c:if>
|
|
|
|
<c:if test="${ ! empty degreeSupplementalInfo }">, ${degreeSupplementalInfo}</c:if>
|
|
|
|
</c:when>
|
|
|
|
<c:otherwise>
|
|
|
|
<a href="${objLink}"><p:process>educational background ${individual.name}</p:process></a>
|
|
|
|
</c:otherwise>
|
|
|
|
</c:choose>
|
|
|
|
</c:when>
|
|
|
|
|
|
|
|
<%-- SUBJECT is a Degree Type --%>
|
2010-07-06 15:28:47 +00:00
|
|
|
<c:when test="${predicateUri == 'http://vivoweb.org/ontology/core#degreeOutcomeOf'}">
|
2010-04-08 15:19:14 +00:00
|
|
|
<c:set var="year" value="${individual.dataPropertyMap['http://vivoweb.org/ontology/core#year'].dataPropertyStatements[0].data}"/>
|
|
|
|
<c:set var="degreeMajor" value="${individual.dataPropertyMap['http://vivoweb.org/ontology/core#majorField'].dataPropertyStatements[0].data}"/>
|
|
|
|
|
|
|
|
<c:set var="selectedOrganization" value="${individual.objectPropertyMap['http://vivoweb.org/ontology/core#organizationGrantingDegree'].objectPropertyStatements[0].object}"/>
|
|
|
|
<c:set var="selectedOrganizationName" value="${selectedOrganization.name}"/>
|
|
|
|
|
2010-07-14 15:27:44 +00:00
|
|
|
<c:set var="person" value="${individual.objectPropertyMap['http://vivoweb.org/ontology/core#educationalTrainingOf'].objectPropertyStatements[0].object}"/>
|
2010-04-08 15:19:14 +00:00
|
|
|
<c:set var="personName" value="${person.name}"/>
|
|
|
|
<c:url var="personURL" value="/individual"><c:param name="uri" value="${person.URI}"/></c:url>
|
2010-07-06 16:22:26 +00:00
|
|
|
<c:set var="personLink" ><a href='${personURL}'>${personName}</a></c:set>
|
2010-04-08 15:19:14 +00:00
|
|
|
|
|
|
|
<c:url var="objLink" value="/individual"><c:param name="uri" value="${individual.URI}"/></c:url>
|
|
|
|
|
|
|
|
<c:choose>
|
|
|
|
<c:when test="${! empty personName && ! empty year && ! empty degreeMajor && ! empty selectedOrganizationName }">
|
2010-07-06 16:22:26 +00:00
|
|
|
${personLink} in ${degreeMajor}, ${selectedOrganizationName}, ${year}
|
2010-04-08 15:19:14 +00:00
|
|
|
</c:when>
|
|
|
|
<c:when test="${! empty personName && empty year && ! empty degreeMajor && ! empty selectedOrganizationName }">
|
2010-07-06 16:22:26 +00:00
|
|
|
${personLink} in ${degreeMajor}, ${selectedOrganizationName}
|
2010-04-08 15:19:14 +00:00
|
|
|
</c:when>
|
|
|
|
<c:when test="${! empty personName && empty year && ! empty degreeMajor && empty selectedOrganizationName }">
|
2010-07-06 16:22:26 +00:00
|
|
|
${personLink} in ${degreeMajor}
|
2010-04-08 15:19:14 +00:00
|
|
|
</c:when>
|
|
|
|
<c:when test="${! empty personName && ! empty year && empty degreeMajor && ! empty selectedOrganizationName }">
|
2010-07-06 16:22:26 +00:00
|
|
|
${personLink} ${selectedOrganizationName}, ${year}
|
2010-04-08 15:19:14 +00:00
|
|
|
</c:when>
|
|
|
|
<c:otherwise>
|
2010-07-06 16:22:26 +00:00
|
|
|
<a href="${objLink}">educational background ${individual.name}</a>
|
2010-04-08 15:19:14 +00:00
|
|
|
</c:otherwise>
|
|
|
|
</c:choose>
|
|
|
|
</c:when>
|
|
|
|
|
|
|
|
<%-- The predicate was not one of the predicted ones, so create a normal link --%>
|
|
|
|
<c:otherwise>
|
|
|
|
<c:url var="objLink" value="/individual"><c:param name="uri" value="${individual.URI}"/></c:url>
|
2010-07-06 16:22:26 +00:00
|
|
|
<a href="${objLink}">${individual.name}</a>
|
2010-04-08 15:19:14 +00:00
|
|
|
</c:otherwise>
|
|
|
|
</c:choose>
|
2010-04-02 16:15:23 +00:00
|
|
|
|
2010-04-08 15:19:14 +00:00
|
|
|
|
|
|
|
</c:when>
|
|
|
|
|
|
|
|
<%-- This clause is when there is no object individual defined, it should never be reached. --%>
|
|
|
|
<c:otherwise>
|
2010-07-14 15:27:44 +00:00
|
|
|
<c:out value="Nothing to draw in educationalTrainingShortView"/>
|
2010-04-08 15:19:14 +00:00
|
|
|
</c:otherwise>
|
2010-04-02 16:15:23 +00:00
|
|
|
</c:choose>
|