Top Banner
Faculty of Humanities Humanities Research Support Team HDT2009001 Staff Profiles Specification Claire Knowles Page 1 of 55 07/06/2022
55
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: media:HDT2009001-specification.doc

Faculty of Humanities

Humanities Research Support Team

HDT2009001

Staff Profiles Specification

Claire Knowles Page 1 of 46 10/04/2023

Page 2: media:HDT2009001-specification.doc

Revision History

Version Date Author(s) Change Description1 16/12/2008 Claire Knowles First Draft2 08/01/2009 Claire Knowles Updated following meeting with Faculty

of Humanities Web Officers3 19/01/2009 Claire Knowles Updated format and details of

Institutional Repository4 21/01/2009 Claire Knowles Added screen shots and database table

names5 03/02/2009 Claire Knowles Updated following meeting with EPS and

Central Portal and Database staff6 02/03/2009 Claire Knowles Updated formatting and risks

7 24/04/2009 Theresa Teng Add staff profile page details in section 3.3.5.

8 05/05/2009 Phil Bradbury Amended Staff List XML structureAdded details of Staff List application

9 08/05/2009 Claire Knowles Amended to reflect progress with portlets.

10 29/05/2009 Theresa Teng Amended staff profile page (3.3.5);Add staff details XSL file notes in (3.3.5.4);Add template related content in (3.3.6)

11 09/09/2009 Claire Knowles Updated to reflect changes to portlet.

12 02/10/2009 Claire Knowles Updated following feedback from Theresa Teng and David Risley. Formatting changes.

Claire Knowles Page 2 of 46 10/04/2023

Page 3: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

CONTENTS

1. OVERVIEW 5

2. FUNCTIONAL OVERVIEW 6

2.1. STAFF PROFILES PORTLET 62.2. PROFILE ADMINISTRATION PORTLET 62.3. SCHOOL PUBLIC WEB PAGES 6

3. TECHNICAL OVERVIEW 7

3.1. STAFF PROFILES PORTLET 73.1.1. SCHOOL REQUIREMENTS 73.1.2. REQUIRED HUMANITIES PROFILES DATA 73.2. ACADEMIC PROFILE ADMINISTRATION PORTLET 93.2.1. PROFILES DATA FLOW 103.2.2. DATA FEEDS REQUIRED 113.2.3. NAVIGATION 113.2.4. PERMISSIONS 113.2.5. STAFF LISTS 113.2.6. STAFF PROFILE FORMAT (PHASE 2) 173.2.7. ADMINISTRATORS 173.2.8. DATA STORAGE 173.2.9. JAVA DEVELOPMENT ENVIRONMENT 193.2.10. MAVEN 203.2.11. ACADEMIC PROFILES PORTLET CONFIGURATION FILES 213.2.12. ACADEMIC PROFILES PORTLET CODE STRUCTURE 213.2.13. DEPLOYING THE PORTLET 243.3. XML SCHEMAS 253.3.1. XML STAFF LIST SCHEMA 253.3.2. XML STAFF PROFILE SCHEMA 253.4. SCHOOL WEB PAGES 263.4.1. SCHOOL REQUIREMENTS 263.4.2. SEARCH FRIENDLY PAGES 263.4.3. URI NAMING CONVENTIONS 273.4.4. STAFF LISTS 283.4.5. STAFF PROFILE DETAILS 303.4.6. TEMPLATES FOR STAFF LIST AND STAFF PROFILE DETAILS PAGES 313.4.7. CHANGES REQUIRED ON SCHOOL STATIC SITE 323.4.8. RISKS 323.5. DATA STORAGE 333.5.1. RIP DATABASE 333.5.2. HUMANITIES INTEGRATION DATABASE 333.5.3. IMPORT OF EXISTING PROFILE DATA 333.6. RIP DATA FEEDS 343.6.1. INSTITUTIONAL REPOSITORY 343.6.2. STAFF PROFILE DATA 343.6.3. MOVE TO DYNAMIC CONTENT 343.7. DATA MIGRATION 353.7.1. PUBLICATIONS TO ESCHOLAR 353.7.2. PROFILES TO PORTLETS 35

Claire Knowles Page 3 of 46 10/04/2023

Page 4: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

4. ISSUES 36

4.1. ASSUMPTIONS 37

5. APPENDIX 38

5.1. CURRENT CV GUIDELINES 38A.        RESEARCH AND ACADEMIC/PROFESSIONAL STANDING 38B.        TEACHING 39C. KNOWLEDGE TRANSFER 39D.        ACADEMIC SERVICE 405.2. ONLINE DIRECTORY DATA 40

6. Contacts 41

Claire Knowles Page 4 of 46 10/04/2023

Page 5: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

1. Overview

The implementation of a new University wide Institutional Repository ‘eScholar’ by John Rylands University Library means that the existing Humanities Publications and Profiles application is no longer required with its present functionality. However the Faculty still requires an application to populate school websites with staff and publication data. This application will pull data from the Central Profile System and the new Institutional Repository as well as allow additional data to be entered for display on school web pages.

Claire Knowles Page 5 of 46 10/04/2023

Page 6: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

2. Functional Overview

2.1. Staff Profiles Portlet

An ‘Academic Profile’ portlet has been developed by EPS which allows users to view their Online Directory data and add additional profile information. This portlet will be extended to allow staff to delegate the ability to add/edit profiles to school administrators and Research Development Managers (RDMs). This portlet is restricted to staff through the University Portal and initially will only be available to staff in the Faculties of Humanities and Engineering and Physical Sciences (EPS).

2.2. Profile Administration Portlet

This portlet will be accessed via the University portal and restricted to University users. It is intended for Organisation Unit administrators. To provide some continuity with the Academic Profile portlet it is intended to be launched from inside the Staff Portal. It will enable administrators to store display preferences for staff lists in organisational unit web pages. Administrators will be able to add staff lists; add and remove staff from lists; format lists and order staff and lists. Profile and formatting information will be stored in a central database with automated backups.

2.3. School Public Web Pages

Staff list web pages will be provided to all Organisational Units (schools, research centres and institutes); the format of these pages will be chosen by administrators within the Profile Administration Portlet (Phase 2), if no format is selected the default will be used, the default layout will be provided as part of Phase 1. Staff names will link to a profile page based on the data added in the web interface and harvested from other applications. These pages will have no access restrictions.

Claire Knowles Page 6 of 46 10/04/2023

Page 7: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3. Technical Overview

3.1. Staff Profiles PortletThe portlet is accessed through the University Portal which is a version of the Jasig uPortal framework designed to host portlets written to the Java Portlet Specification (JSR 168) and has been developed by EPS in Java using Maven, Hibernate and the Spring Framework.

Due to changes required to the RIP Schema for the profiles portlet and the continuing use of RIP for academic University profiles and FLS and MHS. The portlet will save data to the RIP v6 database while RIP runs against v5. It is intended that the University profiles and MHS and FLS will move to v6 in the future. The profiles data will be processed overnight to v5 to be available on RIP and School web pages.

3.1.1. School Requirements

N.B. these are subject to further discussion and prioritisation.

Allow staff members to logon and edit their profile Done

Retrieve photo for staff member Done

Allow staff to decide whether their photo is displayed on their profile (displayed by default)

Done

Retrieve staff information from the Online Directory for inclusion in the staff profile Done

Allow additional profile data to be added, stored and edited Done

Store a hierarchical permissions system which allows School Administrators, Head of School, School Website Admin and Research Development Managers (RDMs) to edit profiles

Implemented as Delegation

Ability to include postgraduate profiles ?

Allow text to be entered as HTML to allow the inclusion of URLs and formatting Done

Search for staff for editing Delegation

If publications are co-authored either or both staff can select or de-select the publication (part of IR)

Part of IR

Notification email to be sent if a data feed fails TBC

Store audit information for profile data ?

Display audit information on edit pages ?

Styles and formatting must match the University Corporate identity Done

Pages should meet accessibility requirements Done

Individuals should be uniquely identified in the system using the spot party id Done

Record users last login ?

Do not allow editing of harvested data. Online Directory and Institutional Repository are the ‘golden copies’ and all modifications should be made in these systems which will be linked to in the edit screens.

Done

EPS scripts for loading Humanities staff photos, if available. Scripts are done but

Claire Knowles Page 7 of 46 10/04/2023

Page 8: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

Humanities photos have not been loaded.

Retrieve publications for staff members from the Institutional Repository Not in Phase 1

Allow staff to select which tailored publication list will be shown on their profile page, by default all public publications

Not in Phase 1

Link to edit publications in the Institutional Repository with a single sign-on Not in Phase 1

Ability to freeze profile, so staff who have left the University can no longer update their profiles

TBC

3.1.2. Required Humanities Profiles Data Section Data Type Humanities

Publications Online Directory

E-Scholar Staff CV Guidelines1

Personal R

ecord

Full name Title Job title2 Role School / Division Section Location Telephone Email Address Education Qualifications Previous employment Present employment Visiting appointments Photo URL Academic / professional body membership

Biography Publications

Research

Research interests Research grantsResearch student supervision Professional advisory / consultancy work

Lectures and conference activity Major academic visits and collaborations

Teaching

Current teaching Other teaching activities Teaching interestsCourse director / tutor Office hoursKnowledge Transfer

1 See appendix. Schools requested CV data been included in profiles to add annual reviews.2 Job title and Role are in the current Humanities Publications System however they are not the same as the Role in the Central Profile System.

Claire Knowles Page 8 of 46 10/04/2023

Page 9: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

Academic Service Additional Information

Claire Knowles Page 9 of 46 10/04/2023

Page 10: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.2. Academic Profile Administration Portlet

Organisational Units with the Faculty of Humanities require the ability to format the Staff Lists and Staff Profiles dynamically created from the Profile, Publications and Online Directory data. This will be an Administrators only site, with access limited to administrators’ set-up for Organisational Units.

N.B. the screenshots in the following sections only represent the current state of the application at a particular time and will be periodically updated as changes are made, they do not represent live data.

Allow unit administrators and RDMs to determine the format of the staff list pages for schools and research centres. (A-Z, manual ordering)

Done

Loading with administrators currently set-up for existing Humanities Publications application

Done

Ability to store staff list preferences for each unit Done

Default staff list preferences for units In XSLT

Ability to store staff profiles preferences for each unit Phase 2

Default staff profiles preferences for each unit In XSLT

Single referencing standard for publications for an organisation unit In eScholar

Allow staff to be allocated to more than one organisation unit.

Staff Lists will be generated from Central HR data, therefore it staff are not appearing in the correct unit, their HR record will need to be updated

N/A

Ability to print the profile Store in XML

Ensure display of Unicode characters TBC

Styles and formatting must match the University Corporate identity XSLT

Pages should meet accessibility requirements XSLT

Individuals should be uniquely identified in the system using the spot party id Done

Record users last login Not implemented

Optional link to allow public users to view all publications Store in the XML

Ability to include postgraduate profiles TBC

Select referencing standard for publications e.g. Harvard eScholar

Hierarchical admin rights, set by Faculty for Schools, Research Centres and Institutes.

N/A

Allow selection of staff to appear in the staff lists Done

Claire Knowles Page 10 of 46 10/04/2023

Page 11: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.2.1. Profiles Data Flow

1. Data entry by academics or their delegated user into the Academic Profile Portlet.

2. Data is stored in the profiles_portlet database schema in the tables named tbl_* RIP v.6

3. Anthony Taylor has written an SSIS task which runs nightly and populates the profiles_portlet RIP v.5 tables; it is incremental only, making changes to updated records.

4. Profiles_portlet RIP v.5 tables are named collection_*

5. Wendy Crewe has a nightly process which picks-up the data in the collection_* tables

6. The RIP DB is then populated with EPS and Humanities data profiles data.

7. The staff profile XML is generated from the RIP database and FTP’d to the web farm, where it is processed by John Crowe. Staff XML files are identified by SPOT ID. Staff A-Z list are also generated.

8. RIP XML files for profiles and staff lists

9. School Web pages use XSLT to display the RIP XML data

A1. eScholar has a nightly feed into the RIP Database of staff publications

B1. Data entry by School Administrators into the Academic Profiles Admin portlet

B2. Data is stored in the profiles_portlet v6 tables

B3. Nightly SSIS task to generate the staff lists XML per organisational unit and FTP it to the web farm.

Claire Knowles Page 11 of 46 10/04/2023

7.Profile

XML and FTP to

Webfarm

2. profiles_portlet v6

5.Pick-up v5 Data

3.Nightly SSIS task

v6 to v5

1. Profiles Portlet 6.

RIP DB4.

profiles_portlet v5

8.RIP XML

9.School

web pages

A1.eScholar

Data

B1.Profiles Admin Portlet

B2.profiles_portlet v6

B3.Nightly SSIS

FTP task

Page 12: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.2.2. Data Feeds Required University Staff past and Present Staff appointments University Organisational Units and Hierarchy

Staff List format information can be stored for each unit Staff Profile format information can be stored for each unit Staff Lists formats can create multiple lists to appear under the unit Order lists and staff

3.2.3. NavigationNavigation round the portlet will be based on the Organisational Unit.

3.2.4. PermissionsJoni and Anthony in Central IT Services manage portal permissions for the University and need to be contacted to give users access to the portlet through the portal. All users of the portlet need to have organisational unit permissions set in the organisation_authorisations table in portal_profiles, otherwise they will be shown an error message in the portal informing them that they do not have the necessary permissions. These permissions can be set in the ‘User Administration’ area of the portal by System Administrators. System Administrators can only be created through SQL inserts into the organisation_authorisations table in portal_profiles; their role, category and ou code is configured in the portal filter.

3.2.5. Staff Lists

Staff lists can be added for all Organisational Units. Administrators can choose: Which staff can be displayed, for example:

Research active staff Teaching staff Support staff Honorary staff Associate staff Research students All staff

Claire Knowles Page 12 of 46 10/04/2023

Organisational Units

Staff Appointments

Staff

Organisational Unit Formatting

Organisational Unit User

Existing Data Held Centrally New Website Formatting Data

Page 13: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

Order of Staff

Order of Lists

Data to be displayed (Phase 2, currently in XSLT): Can choose which profile data is displayed on staff pages per staff list e.g. Title, Name (option to link to profile), Discipline, Research Centre / Institute, Room, Email,

Telephone Current default appears to be all research staff A-Z with Title and Name (option to link to profile)

Telephone, Email (as email link) in a table Which field, if any, will link to the staff profile

3.2.5.1. Main Academic Profiles Admin Page

This is the main page within the portlet and the default view. It displays the organisational unit in the drop down which you are currently managing staff lists for and all the staff list sections e.g. research staff, teaching staff, administrators. Sections can be order by dragging and dropping the section name or number up and down the table. View List Sections links to this view for the organisational unit selected in the drop-down from any other view.

From this page you can administer the staff list and add or remove lists. All staff lists containing staff will be displayed on school pages.

Claire Knowles Page 13 of 46 10/04/2023

Page 14: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.2.5.2. Academic Profiles Admin Order/Remove Staff Page

This page contains all staff that have been selected for the list and their order. Staff can be ordered by selecting ‘Order A-Z’ or by dragging the name or number up and down the table.

Staff can be selected individually or in multiples by checking the check boxes to remove them from the list. The user will be asked for confirmation before the deletion is completed.

Claire Knowles Page 14 of 46 10/04/2023

Page 15: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.2.5.3. Academic Profiles Admin Add Staff Page

Claire Knowles Page 15 of 46 10/04/2023

Page 16: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.2.5.4. Academic Profiles Admin Add List Page

Claire Knowles Page 16 of 46 10/04/2023

This page allows the user to add staff to a list. By default the page displays: a search box to find staff within the University; a list of unselected staff for this list section in the Organisational Unit; list of Organisational Units beneath the selected one from which staff can be selected.

N.B. Staff are shown listed under the Organisational Unit their appointment is with, this data comes from HR and may be incorrect.

The staff list search box will auto-complete after 3 characters and show 10 possible matches. This is configurable in the jQuery file.

Page 17: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

This page is very similar to the edit name page and contains one text box where the lists display name is entered. This is validated using the JQuery validation plug-in and cannot be empty or less than 2 characters long. Validation can be modified and extended in the JQuery file.

Claire Knowles Page 17 of 46 10/04/2023

Page 18: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.2.5.5. Academic Profiles Admin User Administration

Only System Administrators can see the ‘User Administration’ link. System Administrators can only be set-up directly in the database in the Organisation Authorisation and the configuration file details the role and University Organisational Unit Code they require.

System Administrators can add and edit the Users who can login to the portal and what Organisational Units they can edit.

In the User Administration page, System Administrators can search for staff and then check boxes to add or remove permission for Organisational Units.

Claire Knowles Page 18 of 46 10/04/2023

Page 19: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.2.6. Staff Profile Format (Phase 2)Organisational Units can choose what profile data is displayed. By default all profile data which has been completed will be displayed. The list of potential profile data will be listed with checkboxes which by default on first use will all be checked. If the unit has a profile format saved then these setting will be loaded on to the screen. Users will be able to select all individually all fields entered into the Online Directory and About Me portlet and the publications as a whole, but not individual publications. They can also select if a link will be provided to all publications and a printable version of the profile. Admin users will also be able to reorder profile fields for display on screen.

3.2.7. Administrators Organisational Unit administrators can be added and maintained by System Administrators. System Administrators have to be set-up directly in the Organisation_Authorisations table. The category and role of the system administrator is defined in the Admin Portlet configuration.

N.B. There are currently two University of Manchester Organisational Units in the data received from Central; this should be changed so there is only one overall parent. As Humanities is currently separated from the rest of the Faculties. A fix for this has been put into the code, into the config, SaveAdminUserController, SetupUSerAdminController and ChildOuSearch Servlet, however this should be removed and the central data altered so that there is just one top level Organisational Unit.

3.2.8. Data Storage

Data storage will utilise a database hosted centrally on Microsoft SQL Server 2005 and subject to regular backups. Its main purpose will be the safe storage of the project data. UPortal uses a MySql database and this is required for a local development environment.

3.2.8.1. Portal_Profiles Database

The portal_profiles schema is used by both the Academic Profiles Portlet and Academic Profiles Administration Portlet. Due to the differences between RIP v5 and RIP v6 database the schema contains tables to transfer data between these two schemas. Data transfer is undertaken through SSIS scripts. V5 to V6 is a one-off process, which has been completed, whereas V6 to V5 is scheduled to run nightly.

The majority of tables within this schema are used by the Academic Profiles Portlet. Tables used by the Academic Profiles Administration Portlet:

LIST_MANAGEMENT id (bigint) Primary Key party_number (varchar 30) Unique Constraint list_name (varchar 50) Unique Constraint section (varchar 100) Unique Constraint source (varchar 50) primary_OU3 (varchar 50) list_id (bigint) Foreign Key list_order (int)

ORGANISATION_LIST_FORMATTING Id (bigint) Primary Key list_name (varchar 50) Unique Constraint section (varchar 50) Unique Constraint organisation_code(varchar 10) Unique Constraint list_format (nvarchar) display_name (varchar 500) updater_party_number (varchar 30) updated_date (datetime) list_order (int)

Claire Knowles Page 19 of 46 10/04/2023

Page 20: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

ORGANISATION_AUTHORISATIONS organisation_code (nchar 10) Composite Primary Key delegate_party_number (varchar 50) Composite Primary Key authorisation_category (varchar 100) Composite Primary Key delegate_name (varchar 250) delegate_email (varchar 250) role_name (varchar 50)

ORGANISATION_PROFILE_FORMATTING (Not currently Used) organisation_code (nchar 10) Primary Key profile_format (nvarchar) updater_party_number (varchar 30) updated_date (datetime)

3.2.8.2. Portal_Services Database

This schema is used by the Java Service MAN_Service_Search which is in turn used by both portlets. It is populated nightly by Central IT services. It is hoped to replace this schema with calls to LDAP which would be in ‘real-time’, work on this is currently on-going by EPS and Central IT Services.

TBL_ORGANISATIONAL_UNITS OU_CODE (varchar 11) OU_LEVEL (int) OU_DESCRIPTION (varchar 500) PARENT_OU_CODE (varchar 11)

TBL_STAFF_APPOINTMENTS PARTY_NUMBER (varchar 11) POST_TITLE (varchar 500) OU_CODE (varchar 11) OU_LEVEL (int)

TBL_UNIVERSITY_STAFF PARTY_NUMBER (varchar 11) TITLE (varchar 30) FAMILY_NAME (varchar 240) PREF_FORENAME (varchar 240) PRIMARY_EMAIL_ADDRESS (varchar 500) STATUS (varchar 11) LIBRARY_CARD (varchar 50) USERNAME (varchar 50)

3.2.8.3. SQL Server Integration Services (SSIS)

SSIS tasks are used to manage, maintain and transfer data in Microsoft SQL Server 2005. Writing and maintaining SSIS packages is done in the visual development tool SQL Server Business Intelligence Development Studio (BIDS), which is based on Microsoft Visual Studio. A few SSIS tasks have been written for the admin portlet which have been run on the live SQL Server portal_profiles database and will not need to be run again. These are: Add Staff Lists for all OUs Create Default Staff Lists Staff List XML Migrate Hum Data to RIP v6

The Create Staff List XML SSIS task runs nightly on the SQL Server to create the staff list XML for the organisational units and FTP them across to the web farm into the directory /home/msc/humripu/rip-web/lists/ou/

Claire Knowles Page 20 of 46 10/04/2023

Page 21: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

Design view of the create staff list SSIS task from BIDS:

The task gets the organisational codes and display names for the staff lists from the database and then loops through them getting the parent ou code and creating the XML in the stored procedure sp_GetStaffListXML_ALLSTAFF the files are then FTP’d by the user humripu to the web farm. This SSIS task uses a config file to store the ftp password. The task is also password protected, the password is mak3f1l35.

3.2.8.4. Stored Procedures

Stored procedures have only been used in the development of the Admin portlet for use by SSIS tasks. Sp_insertlistmanagement is for adding staff to lists and sp_GetStaffListXML_ALLSTAFF is used to generate the staff list xml. The data for the XML is selected by multiple select statements and unions to join them altogether this is required by SQL Server as there is one select statement per XML element. This data is then stored in a temporary table and exported as an nvarchar. There can be only one return value from the procedure.

3.2.9. Java Development Environment Java SDK 1.6 Eclipse Java IDE (latest stable release) Maven Maven is installed locally to release and deploy code and used with the Eclipse plug-in there is also a Manchester maven server for deployed code and snapshots. Central IT Services control access to the Manchester maven repositories. Ant 1.6.5 is used with Maven to release and deploy code Tomcat 6 Java web server uPortalThe latest version of uPortal used within the University can be obtained through CVS. MySQL is required to run it uPortal locally. CVS CVS Version Control is managed by Central IT Services and they manage access and permissions. JIRAJIRA is managed by Central IT Services and is used to manage bugs, issues, tasks and all changes to the portlet and services code base. Releases are also managed through JIRA. HibernateHibernate is used to query the database from within the services. Spring

Claire Knowles Page 21 of 46 10/04/2023

Page 22: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

Spring is a Java web application framework based on the Model View Controller design pattern and utilising XML for configuration.

3.2.10.Maven Maven is an open source tool for Java project management and deployment.

3.2.10.1. Maven Services

All services are saved in CVS; released to Maven; and have issues tracked in JIRA. Central IT Services administer access to these systems.

MAN_SERVICE_ACADEMICPROFILES_ADMINService for the academic profiles admin portlet models the portal_profiles tables list_management, organisation_list_formatting and organisation_authorisations in the domain subproject and accesses them using hibernate in the Data Access Objects (DAO). The appservice subproject provides interfaces to the service.

MAN_SERVICE_ACADEMICPROFILESService developed by Anthony Taylor for the Academic Profiles Portlet which models the portal_profiles tables used by this portlet and performs create, read, update and delete (CRUD) operations using Hibernate in the Data Access Objects.

MAN_SERVICE_SEARCHA service with DAOs accessing the portal_services schema or LDAP to return staff names, appointments and organisations by id, name etc.

MAN_SERVICE_AUTHORISATIONSA service to provide information of user authorisation from the authorisation tables in the portal_profiles schema to the portlets. Academic profiles portlet uses this service to check permissions for staff delegation of profiles to other members of staff. The academic profiles admin portlet; included delegation permissions and administrator permissions.

3.2.10.2. Maven Settings.xml

Use a local settings.xml to store your passwords and usernames to remote Maven repositories and to override properties in the pom.xml. The settings.xml should be saved in the root of your local Maven repository.

<settings><servers>

<server> <username>mfztssss </username> <password>*****</password> <id>manchester</id> </server> <server>

<username>mfztssss </username> <password>*****</password> <id>manchester-private</id>

</server> <server> <username>mfztssss </username> <password>*****</password> <id>manchester-updocs</id> </server> <server> <username>mfztssss</username> <password>*****</password> <id>manchester-snapshots</id> </server> </servers>

Claire Knowles Page 22 of 46 10/04/2023

Page 23: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

<profiles> <profile> <id>inject-filter</id> <properties> <filter.location>c:/workspace/portal/filters</filter.location> </properties> </profile> </profiles> <activeProfiles> <activeProfile>inject-filter</activeProfile> </activeProfiles> </settings>

3.2.11.Academic Profiles Portlet Configuration Files

3.2.11.1. Portlet Context Files

The portlet context file portletContextAcademicProfileAdmin.xml lists all controllers and which pages they render. All properties of the controllers are detailed, as is the location of the data used to instantiate them, e.g. configuration properties or other beans defined in this or other context files, e.g. services.

Servlet context files define all the servlets and the views they render.

The application context file defines the services and their implementations; the database connections; exception handling and the Spring configuration.

Views.xml is used for the JSON view.

3.2.11.2. Web.xml

A web.xml file is required for a Java Web application, which is deployed as a .war file. It is the application deployment descriptor containing configuration of the elements used in the application. All servlets and their mappings are listed as are filters, listeners and tag libraries. The Web.xml is used by Tomcat in the deployment of the portlet.

3.2.11.3. Portlet.xml

The portlet.xml file is a descriptor file, containing configuration details about all bundled portlets in the .war file. It contains the portlet name; the portlet modes it supports; and any preferences.

3.2.11.4. Spring-servlet.xml

The Spring configuration file contain the view resolver set-up.

3.2.11.5. Pom.xml

Project Object Model (POM) is an XML file that contains information about the project and configuration details used by Maven to build the project. It contains default values for most projects. Goals and plugins are also defined in the POM. Where multiple plugins are used from the same service I have used properties to contain the version numbers. Settings in the POM need to be checked before making a release. A snapshot version can only be released to the Beta server. POM files are hierarchical and the parent is the MAN-MAVEN-PORTLETPARENT, it is important that the version number of the parent is kept up-to-date to inherit the correct properties.

3.2.11.6. Build.xml

Ant project and configuration file used for Ant commands and by Maven.

Claire Knowles Page 23 of 46 10/04/2023

Page 24: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.2.12.Academic Profiles Portlet Code Structure

3.2.12.1. JQuery

JQuery is a JavaScript library and is used with JavaScript in the Admin Portlet and Portal. JQuery is name spaced within the Admin Portlet to stop conflicts with other portlets client-side code. Plug-ins are used to provide additional functionality, for example: validation; alerts; table ordering; and auto-completion.

N.B. Table DnD plugin has been included inline in the IncludeJQuery.jsp as there were errors when the script was included in the page. This should be rectified in the future.JQuery Live has been used to the reliance on Ajax calls within the Admin Portlet.Check Session calls a servlet to stop the portal timing out during Ajax calls which do not cause a page refresh.

3.2.12.2. Controllers

The Admin Portlet is written in the Model View Controller (MVC) design pattern. There are two types of controllers used within the Admin Portlet; one extends the AbstractAjaxController and the other extends the AbstractController.

Portlets differ from other Java Web Applications in that the portlet life-cycle has two phases, action and render. This is because portlets can still be viewed whilst the user is using another portlet within the portal. The abstract controller has a handleRenderRequestInternal and a handleActionRequestInternal method; while the Ajax controller is only called once through the handleAjaxRequestInternal.

AcademicProfileHelpAdminPortletController.javaOpens up the help page which includes the FAQ, help will only be displayed if it has been enabled by the portal manager.

AddAllStaffToListController.javaAdds all staff in the selected organisational unit to the list that are not already members of the list.

AddStaffListController.javaController adds a staff list into the database for the selected organisational unit using the display name entered by the user.

AddStaffToListController.javaAdds selected staff member/s to the selected list, checks that they are not already members of the list.

DefaultController.javaThe default controller for the academic profile portlet.

DeleteStaffListController.javaController to delete the selected staff list from the database.

EditStaffForListController.javaChanges the staff displayed on the page following an Ajax request.

EditStaffListController.javaSaves changes to the staff list display name.

GenericAjaxController.javaBase Ajax controller, extended by all other Ajax controllers.

RemoveStaffFromListController.javaDeletes staff from the list in the database.

SaveAdminUserController.javaAdd users to the authorisation table so that they can administer lists for the selected organisational units.

SaveListOrderController.javaSaves the order of lists as they are dragged and dropped through an ajax request.

SaveStaffOrderAtoZController.java

Claire Knowles Page 24 of 46 10/04/2023

Page 25: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

Saves staff in a list ordered A to Z by surname then forenames.

SaveStaffOrderController.javaSaves the order of staff in a list as they are dragged and dropped through an ajax request.

SetupEditStaffListController.javaA controller to setup the edit staff list page, it retrieves the staff list to be edited.

SetupUserAdminController.javaA controller to setup the admin page it displays the top level organisational units and checks the user authorisation.

ViewStaffForListController.javaDisplays staff in the list selected by the user.

ViewStaffListController.javaReturns the lists for the selected organisational unit, it is used every time the main page is loaded.

StaffListParameterConstants.javaA constants object for staff list forms.

3.2.12.3. Servlets

AuthorisationServlet is specific to the Admin Portlet and is called in a JQuery Ajax call to return a list of organisations a staff member has administrator privileges for.

DelegateStaffServlet was written by Anthony Taylor for the Academic Profile Portlet and is called through the JQuery auto-complete plug-in to list staff matching a search term.

N.B. I had to add emptySessionPath="true" to Tomcat’s server.xml Connector port="8080" for session data to be shared between servlets and portlet controllers.

3.2.12.4. Hibernate Mappings

Hibernate is used within the Maven Services to map object to database tables, it is used in preference to embedded SQL or prepared statements There is generally one mapping file per table.

3.2.12.5. Cascading Style Sheets (CSS)

CSS is used to format HTML in JSPs; it is name spaced to avoid conflicts. Themes have been set-up across the portal and can be set as user preferences. Styles should be expressed in the css file and not inline within the html.

3.2.12.6. Filters

Filters allow different configurations to be used on different machines, e.g. local development pc; beta server; test server and live servers. All machines have a local version of the filter containing their configurations. An example filter is included in the source code with all properties commented out. You can override the filter location in your local settings.xml file in the Maven repository; this is especially useful if developing on Windows. Central IT Services manage the filters on their servers and need to be notified when deploying a release of any new configuration properties.

Settings.xml excerpt which overrides filter.location property in pom.xml

<profiles><profile>

<id>inject-filter</id> <properties> <filter.location>c:/workspace/portal/filters</filter.location> </properties> </profile> </profiles> <activeProfiles>

Claire Knowles Page 25 of 46 10/04/2023

Page 26: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

<activeProfile>inject-filter</activeProfile></activeProfiles>

3.2.12.7. Comparators

Comparators are Java Objects used for ordering and sorting. In the portlet they are used to order Staff and Organisational Units. LineageComparator sorts Organisational Units by their hierarchy within the University.

3.2.12.8. Interceptors

Interceptors are similar to Servlet Filters, intercepting method invocations. The use of an interceptor is configured in the portlet context file. Two interceptors are used in the Admin Portlet:

AuthorisationInterceptor has been written specifically for this portlet and intercepts all controllers to ensure that the user has permission to use the portlet.

ParameterMappingInterceptor is part of the Spring Framework and is not used with the Ajax Controllers; it ensures that the same controller is used for the action and render part of the request.

3.2.12.9. Utility Objects

Utility objects are collections of static methods for common data manipulation functions called by controllers.

3.2.12.10. Java Server Pages (JSP)

JSPs provide the view of the portlet, they are written in XHTML and Java Tag Libraries, to remove the need for any Java scriptlets. There is one main page ProfileAdmin_View.jsp into which the Ajax pages are included through JQuery. This page contains all the elements which are viewable on every page and is the default view. ProfileAdmin_Help.jsp is viewable when the user clicks the ‘?’ on the top right of the portlet. The error page is defined in the portlet context file.

3.2.12.11. Ajax Pages

These pages are included after a successful ajax call to a controller or servlet. Which page is called is detailed in the Portlet Context file. Ajax pages and controllers are also listed in the servlet context files and in the web.xml.

3.2.13.Deploying the portlet

3.2.13.1. Local Deployment

Before deploying your portlet to a local tomcat web server, all dependent services must be available in a Maven repository. If possible it is preferable to use services deployed to the Manchester maven repositories including snapshot. However if your services are still in development you can use versions in your local repository. Deploy locally using ant deploy, I generally run a mvn clean first, because I have occasionally found that files have not been completed replaced.

3.2.13.2. Beta Deployment

Portlets with snapshot version numbers are deployed to beta. Dependencies cannot be in your local maven repository if you are deploying to beta. Use mvn deploy to deploy to beta, the server is restarted every night so you will see your changes the following morning.

3.2.13.3. Test Deployment

Test deployments should be done from a fresh check out from CVS in a clean directory. An account can be acquired on the Parkia server from Anthony Colebourne to create a release there in a clean environment with ssh access to CVS. You will need to login to the server, checkout the code from CVS using the command line tools and prepare and perform a maven release.

mkdir my_working_dir (the directory name of your choosing)

cd my_working_dir

cvs login

Claire Knowles Page 26 of 46 10/04/2023

Page 27: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

cvs checkout module_name/project_name

mvn release:prepare

mvn release:perform

There are more details and documentation on the Portal Wiki. http://wiki.manchester.ac.uk/portal/

3.2.13.4. Live Deployment

Is done by Central IT Services when they are satisfied that testing is complete.

3.3. XML Schemas

3.3.1. XML Staff List Schema

The staff list format data will be held as XML. The schema is as follows:

<stafflist description=”” code=””><format>

<column type=”” name=”” /></format><list code=”” name=””>

<section name=””><staff party_number=””>

<details title=”” family_name=”” forename=””/><contact title=”” type=”” value=””/><description title=”” type=””>VALUE</description>

</staff></section>

</list></stafflist>

This structure will allow schools to have more than one list containing different data, all of which will be shown on the same page.

For example in School of Law staff are listed: All academic staff under title heading along with their name, telephone number and email address All honorary staff under title heading along with their name, telephone number and email address All teaching staff under title heading along with their name, telephone number and email address All research assistants under title heading along with their name, telephone number and email address All support staff with name, job title, telephone number and email address

For example:

<stafflist description="School of Arts, Histories and Cultures" code="I3020"><format>

<column type="EMAIL" name="Email Address"/> <column type="PHONE" name="Phone number"/> <column type="POST_TITLE" name="Job Title"/>

</format> <list code="I4003" name="Archaeology"/> <list code="I4005" name="Art History &amp; Visual Studies"/> <list code="I3020" name="Cross School Staff"> <section name="Administrative Staff"> <staff party_number="5030123">

<details title="Mr" family_name="Dastardly" forename="Richard"/> <contact title="PERSONAL" type="EMAIL"

value="[email protected]"/> <contact title="PERSONAL" type="PHONE"

value="+44 (0)161 275 7358"/>

Claire Knowles Page 27 of 46 10/04/2023

Page 28: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

<description type="PERSONAL" title="POST_TITLE">Head of Airborne Pest Control</description>

</staff> </section> </list></stafflist>

3.3.2. XML Staff Profile SchemaPhase 2

Claire Knowles Page 28 of 46 10/04/2023

Page 29: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.4. School Web Pages

3.4.1. School Requirements

N.B. these are subject to further discussion and prioritisation.

Display staff list in format selected in the Profile Application Phase 2

Display staff profile from a link in the staff list as selected in the Profile Application Done

Allow staff to be viewed in more than one discipline or research centre Done

Link to long version of CV / printable page, if selected by administrator ?

Display HTML formatting in text Done

Keyword search on staff list TBC

Human friendly URI s e.g. www.arts.manchester.ac.uk/research/staff ?

Ensure display of Unicode characters ?

Styles and formatting must match the University Corporate identity Done

Pages should meet accessibility requirements ?

Empty fields should not be displayed Done

If only selected publications are shown this should be indicated on the page TBC

3.4.2. Search Friendly Pages Should be incorporated into the school pages if possible.

Pages should be integrated with the university search facility this requires a Google search class and hidden input fields on the page. They should hold values relevant to the School of Research Institute, though small Research Groups should use the School search values.

Use descriptive <title>, <h1>, and <h2> tags to increase page ranking. Use the University <title> convention, page <title>s should follow the format: Xxxxxxxxx (sitename -

University of Manchester) where Xxxxxxxxx is shorter than 40 characters For example: All staff page: Staff (Arts, Histories and Cultures – University of Manchester) Research staff page: Research Staff (Law – University of Manchester) Staff Profile page: Carolyn Abbot (Law – The University of Manchester) Staff Publications page: Carolyn Abbot Publications (Law – The University of Manchester)

Keep urls in lower case Make links relevant e.g. Carolyn Abbot’s Publications as a link rather than Carolyn Abbot’s Publications

here Have <alt> and <title> tags on the staff photo Pages should be less than 101k as this is the Google cache limit Put redirects on existing pages:

<script runat="server">private void Page_Load(object sender, System.EventArgs e){Response.Status = "301 Moved Permanently";Response.AddHeader("Location","http://www.new-url.com");}</script>

Guidelines for integration of pages into the University’s Google Search Appliance are on the Staffnet. http://www.staffnet.manchester.ac.uk/webhandbook/search/

Profile pages should be searchable and allow staff to be searched by interest.

Claire Knowles Page 29 of 46 10/04/2023

Page 30: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.4.3. URI naming conventions

Should be incorporated into the school pages if possible.

School staff lists and profile pages will have URI s created for them by the Profiles Application. These pages should have a standard naming convention. Well formed URI s which are human readable perform better in search engine results and can result in a higher page ranking as well as being more user friendly.

For example:www.staff.humanities.manchester.ac.uk/law/staff - lists all staffwww.staff.humanities.manchester.ac.uk/law/research /staff - all research staffwww.staff.humanities.manchester.ac.uk/law/support /staff - all support staffwww.staff.humanities.manchester.ac.uk/law/isei/staff - all staff in Institute for Science, Ethics and Innovationwww.staff.humanities.manchester.ac.uk/law/carolyn_abbot - a staff profile www.staff.humanities.manchester.ac.uk/law//carolyn_abbot /publications - a staff publications list

Staff URIs will be created using their unique email alias by removing @ and all characters after it from the email address. Full stops will be removed, as full stops in a URI path should only be used for hierarchical segments. Manchester Business School users will have their codes prefixed with ‘mbs’ as their email local-part cannot be guaranteed to be unique within the university due to the use of the MBS domain. Only one URI should be used to increase page ranking, therefore when going to a staff page from different Organisational Units the URI should be the same.

These URIs have no extension so it is not possible to tell if they are html, apsx, or jpg, it may not be possible to use URI s like this as they depend on the version of IIS installed on the servers.

Technical information on how to re-write URIs and the implications can be found at http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx

University URL Guidelines are on the Staffnet. http://www.staffnet.manchester.ac.uk/webhandbook/urls/

Claire Knowles Page 30 of 46 10/04/2023

Page 31: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.4.4. Staff Lists

Staff lists are generated according to the format defined by the administrator in the web interface.

They have the look and feel of the Organisational Unit they are part of as the application. Staff names link to the staff member’s profile page passing the Organisational Unit’s code and the Party Number of the staff member. to determine which citation format is used in the publication list.

Existing Staff List page for School

Existing Staff List page for a discipline

Claire Knowles Page 31 of 46 10/04/2023

Page 32: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

Claire Knowles Page 32 of 46 10/04/2023

Page 33: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.4.5. Staff Profile Details Staff profile details page (StaffDetails.aspx in .Net solution StaffProfiles) is part of the Faculty’s Staff Profile Project.

The Staff Profile Page is called by Staff List Page with selected staff id. It will read XML data of the selected staff member from central server, transform it to HTML format using styles defined in StaffDetailsTransform.xsl, and show it with the selected school/subject area’s look and feel.

The profile data will be displayed in tabs. Clicking on a tab or the link to the tab at bottom of the page will take viewer to that tab.

The error message will be displayed if the page failed to load staff details data from the central server.

Existing staff profile page

3.4.5.1. Dependencies:

StaffDetailsTransform.xsl (in sub-folder xml) – The style transforming file for staff details data in XML format.

Staff details data in XML on central server at http://contentlibrary.manchester.ac.uk/_researchstaffprofiles/. HTML template files (in sub-folder templates) for staff details page of each school/subject area, providing

the look and feel of each school/subject area. Style sheets (in sub-folder css). These are based on RIP site style sheets. The EPS ones seem to have

problem here. Other .Net files in .Net solution StaffProfiles, including StaffList.aspx and Master page.

Claire Knowles Page 33 of 46 10/04/2023

Page 34: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.4.5.2. Input parameters:

ouThe parameter required by master page to get the correct template. It needs to be passed to StaffDetailsTransform.xsl too.

profileIDThe SpotID (PartyNumber) for selected staff member

curTabThe current tab number. This is default to 1 when the page is firstly called by StaffList.aspx. The new tab’s number will be assigned in StaffDetailsTransform.xsl and passed when the page is called again by a tab click in StaffDetailsTransform.xsl.

3.4.5.3. Input parameters for StaffDetailsTransform.xsl:

ouThe parameter required by master page to get the correct template. It’s needed to be passed back as an input parameter for StaffDetails.aspx when a new tab is chosen.

profileIDThe SpotID (PartyNumber) for selected staff member. Again it needs to be passed back as an input parameter for StaffDetails.aspx when a new tab is chosen.

curTabCurrent tab number. It’s 1 when StaffDetailsTransform.xsl is firstly called. The value will be assigned when a new tab or a link to different tab at the bottom of the page is clicked.

staffListFileFull url of the staff list page. It’s needed for the link to staff list page which can take viewer back to there.

3.4.5.4. Issues with original EPS XSLT file and solutions:

Get HTML tags in CData section rendered properly- Problem:

Text in XSLT file’s CData section will be passed over as it is. Therefore if the text contains HTLM tags these would be treated as text.

- Solution:o When CData is used in <xsl:value-of>, set <disable-output-escaping> property to yes.o When CData is used in <xsl:apply-template>, replace it with <xsl:value-of> in order to be able to

set <disable-output-escaping> property to yes.o Use <xsl:choose> instead of [exsl:node-set($fullcontenttabbed)/tab[@id = $curTab]/*] to deal with

tabs in order to show HTML tags in CData section properly Get styles of each section correct in a tab

- Problem: In “Contact details” tab some sections have overlaps.

- Solution: A particular div - <div class=”researchstaffprofile-section”></div> - must be used for every section in a tab and used once only, i.e. not in both tab variable definition part and in displaying part.

3.4.6. Templates for staff list and staff profile details pages

Template files are pre-defined static HTML files stored in template sub-folder as part of the StaffProfile application, providing look and feel for each school/discipline.

3.4.6.1. Header files

The name of header files is in format of Ixxxx_header.html where xxxx is the ou code. Level 3 files (ou code =3xxx) are used for school level list, and level 4 files (ou code=4xxx) discipline level staff list and staff profile details.

Header files need to be updated when school / discipline site template changes, e.g., extra secondary menu item, new item in quick link list, etc.

All the links in header files must be absolute.

All the level 4 ou codes need to be added in to Staff Profile application’s web.config file and to associate with relevant school’s level 3 ou code in order to let the header files properly loaded into .net pages.

Claire Knowles Page 34 of 46 10/04/2023

Page 35: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.4.6.2. Footer files

Each school has its own footer file, with the name being in format of xxx_footer.html where xxx is the school name abbreviation.

3.4.7. Changes required on school static siteStatic school/discipline sites must take certain changes in order to let dynamic staff list/profile details pages work. These changes include Replacing links to staff list in menu items Replacing links to staff list / profile details in various static pages Amending secondary menu to avoid using links to sections in staff listDetails are in separate instruction files for each school.

3.4.8. Risks

Using the RIP XML means that staff profiles on public pages are not automatically updated following changes to the portlets, they are updated nightly following the generation of the XML. The existing Humanities application allowed automatic updates to the profiles. Therefore the automatic creation of the profile XML following updates by staff should be seen as a priority in the future.

Loss of connection to the Institutional Repository will mean that publications are not displayed, therefore an appropriate error message should be displayed, perhaps with a link to the IR page for the staff member, create an error alert

Claire Knowles Page 35 of 46 10/04/2023

Page 36: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.5. Data Storage

3.5.1. RIP DatabaseThe staff profile and formatting data will be stored in a copy of the RIP v6 database in a SQL Server 2005. It will be transformed overnight using SSIS into the existing Oracle RIP v5 database which will be modified to store the new data. As this database is currently in production there are associated risks with changing it’s schema as this will involve rewriting the current import and export functions therefore at a later date this database will move to the v6 schema. New web methods will also need to be created for the Profile and Profile Admin portlets to interface with the RIP database.

3.5.2. Humanities Integration Database

The Humanities Integration database will no longer be required for Staff Profiles.

3.5.3. Import of existing profile data

As there is a nightly feed from the Humanities Publications Database to the RIP database no data migration will be required of profiles data.

Claire Knowles Page 36 of 46 10/04/2023

Page 37: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.6. RIP Data Feeds

3.6.1. Institutional Repository

For Phase 1 eScholar will send a nightly feed to the RIP V5 database of all publicly viewable publications for staff members.

The intention for Phase 2 is that the Academic Profile Portlet will enable users to select lists of publications viewable in their profile. Within the IR users can create tailored lists of publications; by default all users will have public and private lists created. Each list will have a unique and persistent URL created which can be used to retrieve the list as XML, XHTML or RSS. XML lists will be used for presentation purposes within the Humanities Profile Application as this provides greater flexibility though they will require parsing through XSLT.

The eScholar team will work with the portal developers to develop functionality for the selection of the tailored list to be displayed on a Staff Profile page.

3.6.2. Staff Profile Data

The existing Humanities Publications is used to generate a nightly feed to the Central Research Information Project (RIP) database which generates XML for the University profile pages which are accessed from the Online Directory. The Academic Profile portlet will now update the RIP database directly; therefore the XML feed can be used to generate the Faculty of Humanities Staff Profiles pages.

3.6.3. Move to Dynamic ContentThe Faculty of Humanities have requested that profile and publications data being provided to school web pages in ‘real-time’ without the need for nightly data feeds. Issues with the time taken to process the RIP feeds and overhead on the eScholar web servers to provide these large XML feeds means this has become a higher priority issue.

Claire Knowles Page 37 of 46 10/04/2023

Page 38: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

3.7. Data Migration

3.7.1. Publications to eScholarPublications and the links between publications and authors are migrated from the HumRes database on WS_PROD to eScholar. Two views have been created containing this data for the eScholar team:

vw_escholar_ActivePublicationsContains all active publications to be migrated to eScholar

vw_escholar_PubsAuthorsContains the links between active publications and staff members who are authors of publications

A third view was created for additional publication and staff links not originally contained within vw_escholar_PubsAuthors as the staff members had null or empty usernames in the Humanities Publications application. This view is called vw_escholar_PubsAuthors_additions.

eScholar uses SPOT IDs provided by Central IT services as unique identifiers for staff members, however SPOT IDs are not contained in the HumRes database so the eScholar team are matching the usernames in HumRes to SPOT IDs; but SPOT IDs cannot be found for all staff within the HumRes database. This is due to a number of reasons: The HumRes username is not a correct University username but a place holder or temporary name given

during user input. No username is provided in the HumRes database The staff member has two usernames only one of which matches a SPOT ID, but the other username is in

the HumRes database The staff member does not have a SPOT ID as they are a past member of staff not all of which were

assigned SPOT IDs. The user has a SPOT ID but is not part of the Central IT Services data feed.

Where possible we have tried to find the correct usernames and SPOT IDs for these members of staff and they have been stored in the table escholar_spot_id_usernames.

3.7.2. Profiles to PortletsData has been migrated from the Humanities publications application to the new profiles portlet using the existing RIP feeds to Central IT Services. The data has then been copied to copies of the RIP v5 tables in portal_profiles and a SSIS task has migrated this data into RIP v6.

Claire Knowles Page 38 of 46 10/04/2023

Page 39: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

4. Issues These issues were raised by schools during requirements gathering.

School of Environment and Development (SED) have a lot of data gathered during the course of research which counts as research output. They want a facility for disseminating this data and want to know whether the RIP project will include a facility for making data sets, databases, etc., available to a wider audience? Use hyperlinks

LLC concerned whether the profile will show current teaching or their preferred teaching interests Optional, both may be completed, default to show both.

LLC want to include book covers, communal work and downloads. Can add links, book covers will not be harvested or be able to be uploaded.

LLC want to show teaching interests to outside and current interests to university members. All profiles will appear the same to internal and external user.

Definition of Staff, LLC and Combined studies determine staff to be: Research associate Research fellows Research assistants Teaching fellows Administrators can select which staff appear

School of Education would like Web 2.0 similar to the system developed by Mike Pigram for Faculty of Medical and Social Sciences. Out of scope of Phase 1, requires clarification.

School of Education would like a search similar to Google Scholar. eScholar Google scholar includes: Cited by Related articles Web Search BL Direct All x versions Link to JRUL

What data should be mandatory if a profile is filled in? Organisation Units should decide what mandatory; can cause issues if a staff member is a member of more than one unit or changes unit. Mandatory fields cannot be determined by Organisational Units

Should a profile page list the Organisational Units a staff member belongs to? Could retrieve this data from the database with links to the home pages. TBC

Should we allow selected publications and a full list of publications? eScholar

Is it possible for a staff member to ever have more than one profile? No

Can staff be in more than one research centre? Yes

Can research centres be across schools? Yes

Should a link be provided to update your central staff profile? Yes

Will publications have a unique Id? TBC

Will the publication feed contain all the publication data or just the citation? i.e. will the feed need to be modified for presentation to the user in the Web Interface and/or school pages? Citation in style chosen in call

Is a full audit trail required or just created by and when and last updated by and when? A full audit trail is not required, user activity or created and last updated by whom and when would be sufficient

Claire Knowles Page 39 of 46 10/04/2023

Page 40: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

Should all staff in the Humanities staff in the CPS be in the profiles database, if not then staff lists will have to be generated from the central app and not the profiles db. Need to ensure that it is possible to match organisational units in each database. Staff Lists to be generated from central data

4.1. Assumptions

All photos will be a standard size.

The Institutional Repository web service will allow the choice of citation type e.g. Harvard

Publications will be selected for viewing within the Institutional Repository, through the creation of a list or lists

Only one profile will be returned per staff member.

All staff can enter profiles if they wish.

The citation types used by the IR will be sufficient for the Schools in the Faculty of Humanities and will not be subject to change.

If a member of staff is in more than one Organisational Unit the profile data displayed to the public is the same, i.e. they will not have different email address, publications, and office hours depending on whether the profile is linked from one unit or another.

All Organisational Units administrators have the same set of functionality regardless of the Organisational Unit type.

The Academic Profile portlet will contain functionality for user to select whether data, including photos should be publicly viewable.

The same staff profile will be displayed to users internal and external from the University.

Tailored lists from the Institutional Repository can be returned in a citation style which is passed to the IR along with the list identifier.

Claire Knowles Page 40 of 46 10/04/2023

Page 41: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

5. Appendix

5.1. Current CV Guidelines As of (4th October 2006)

Guidelines on the presentation of curriculum vitae for candidates for promotion

Instructions: Throughout, please ensure that you provide relevant details in proper chronological order, with more recent first.

Personal record

1. Full name.

2. Education - universities attended.

3. Qualifications - academic and professional

4. Previous employment and appointments held, including dates.

5. Present appointment, including dates.

6. Visiting appointments/secondments

7. Memberships of academic and professional bodies

A.        Research and academic/professional standing

1         Publications 3 .  

Authored Books;

Edited Books;

Academic Journal Papers;

Book chapters;

Professional Journal Papers;

Popular Journal Papers;

Official Reports;

Review Articles;

Working Papers;

Publications in conference proceedings;

Other Publications: Research;

Other Publications: Research Equivalent;

Other Media: Research;

Other Media: Research Equivalent;

Editorships: Journal;

Editorships: Newsletter;

2. Research grants awarded

3 Where appropriate to your discipline, please indicate the publications most highly cited in web of science or google scholar.

Claire Knowles Page 41 of 46 10/04/2023

Page 42: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

Provide details of grants awarded, including total amount awarded, amount attributable to Manchester, funding bodies, start and finish dates of award, your role in the award (e.g. sole PI, joint PI, research fellow/assistant etc) and key outputs.

3.         Supervision of research students.

Provide full details of current and past students (PhD and MPhil)

4.         Professional advisory or consultancy work.

5.       Lectures and conference activity (* = expenses paid)

Academic invitations received for the presentation of external lectures, and departmental seminars

Presentation of conference papers in the UK and internationally

6. Major academic visits and collaborations, in the UK and abroad.

B.        Teaching

1. Current School teaching duties; undergraduate and postgraduate

2. Other teaching; internal and external to University of Manchester

3. Continuing education or extra-mural teaching.

4. Results of assessment of teaching ability.

5. Publications related to teaching.

6. Innovative work and contributions to curriculum reform and development.

7. Examination responsibilities.

8. Appointments held as Course Director or Tutor.

9. Voluntary activities with students.

C. Knowledge Transfer

1. Invitations received to present external lectures and other contributions to professional conferences and other public events, where the primary audience is not academic, but policy-makers.

2. Involvement in executive education or continuing professional development.

3. Involvement in external consultancy.

4. Involvement in public policy advice/service in a professional capacity (e.g. service by invitation as an expert on advisory international, national, regional or local bodies).

5. Examples of the creation and development of intellectual property and examples of outputs (e.g. patents and licences).

6. Examples of leadership in academic enterprise (new academic enterprise processes designed, initiated and managed).

7. Example of raising capital in support of new business projects.

In all cases please provide evidence of how your knowledge transfer work has been informed by your research and/or how this work informs your research. Please also provide evidence of how your knowledge transfer work has changed practice in bodies outside the academic community.

Claire Knowles Page 42 of 46 10/04/2023

Page 43: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

D.        Academic Service

1. General responsibility for an area of Discipline, School or Faculty academic activity.

2. Service as an official at Discipline, School, Faculty or University level, and service on Discipline, School, Faculty or University Committees.

3. Service on external bodies as a University representative, and on local, national or international committees of learned and professional societies in a personal capacity.

4. Administrative work undertaken as part of a National Health Service clinical contract.

5. Service as an external examiner or as a referee (e.g. for a book publisher or for a research proposal).

6. The holding of an office in, or the discharge of major responsibilities for, a learned society or professional body.

7. In all cases provide evidence of what innovations you have made in these roles, and how your work has led to improvements in the particular activity for which you have been

5.2. Online Directory DataThe online directory collects the following data, not all fields are mandatory:

Title Name Status School/Division Administration Section Administration Role Role ID Username University ID Show Entry (Manchester Uni Only/World) Email Show phone number (Manchester Uni Only/World) External number Internal number Dialling code External number Show room number (Manchester Uni Only/World) Location  Located in

Claire Knowles Page 43 of 46 10/04/2023

Page 44: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

6. Contacts

School of Social SciencesDermot NuttallIT Support and Web DevelopmentArthur Lewis Building 2.015Email: [email protected]: 0161-275-4845

School of Environment and DevelopmentProfessor Clive AgnewHead of School of Environment and DevelopmentArthur Lewis Building 2.039 Email: [email protected] Tel: 0161-275-3654

Dr. Andrea Bardelli Danieli External Affairs AdministratorArthur Lewis BuildingEmail: [email protected]: 0161 275 2815

School of Languages, Linguistics and CulturesCaroline FosterSamuel Alexander Building S3.5Email: [email protected]   Tel:  0161-275-3429

School of LawRosemary HurleyResearch Manager Williamson Building 3.44Email:  [email protected]   Tel: 0161-306-1266

School of EducationGary MotteramEllen Wilkinson Building C2.23Email:  [email protected]   Tel:  0161-275-3431

Diane BrooksEllen Wilkinson Building B4.8Email: [email protected]   Tel:  0161-275-3409

School of Arts, History and CulturesMark WoolstencroftMartin Harris Centre Manager Email:   [email protected]   Tel:  0161-275-8319Martin Harris Centre for Music and Drama G36

Tamsin FarrellResearch ManagerEmail: [email protected]   Tel: 0161-275 3165 Samuel Alexander Building A22

Manchester Business SchoolRay WalmsleyManager, MBS Research Services

Claire Knowles Page 44 of 46 10/04/2023

Page 45: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

Email:  [email protected]   Tel:  0161-275-0537 Harold Hankins Building 9.27

Tom CarrollEmail: [email protected]   Tel: 0161-275-0533Manchester Business School West 2.24

Simon ReynoldsEmail: [email protected]   Tel:  0161-275-0221 Manchester Business School West 2.24

Institutional Repository ProjectDr Phil ButlerInstitutional Repository ManagerJohn Rylands LibraryEmail: [email protected]: 0161-275-1514

IT ServicesDavid Cupit Web Services Application Manager Email: [email protected]   Tel:  0161-275-6028Kilburn Building G49

Joni PurmonenPortal DeveloperEmail: [email protected]   Tel: 0161-3063972 Kilburn Building G49

Anthony ColebournePortal DeveloperEmail: [email protected]   Tel:  0161-275-7077Kilburn Building G49

Wendy CreweDatabase AdministratorEmail: [email protected]   Works from home

Ian Guy Database AdministratorEmail: [email protected]   Tel: 0161-306-5656 Kilburn Building G49

Shaheer AshrafWindows Infrastructure Coordinator Email: [email protected]   Tel: 0161-306-3145 Kilburn Building G110

Faculty of Engineering and Physical SciencesAnthony TaylorWeb Services Manager Email: [email protected]   Tel: 0161-306-3144Sackville Street Building C38A

Claire Knowles Page 45 of 46 10/04/2023

Page 46: media:HDT2009001-specification.doc

Humanities Research Support Team Staff Profiles Specification (v.12)

Yun (Steve) Liem Email: [email protected]   Tel: 0161-306-4564 Sackville Street Building C38

Kevin Mullarkey Email: [email protected]   Tel: 0161-306-4698Sackville Street Building C38

Faculty of Humanities Web Officers Aubrey Scully Email: [email protected]: 0161-275-4880

Tracy TimperleyEmail: [email protected]: 0161-275-1397

Humanities ICT OfficeDavid RisleyResearch Development Team ManagerEmail: [email protected]: 0161-275-1395

Phil BradburyIT Officer Email: [email protected]: 0161-275-8323

Theresa TengIT OfficerEmail: [email protected] Tel: 0161-306-3363

Claire Knowles Page 46 of 46 10/04/2023