1 / 31

EPrints 3 Technical Overview

EPrints 3 Technical Overview. EPrints 3 Briefing 8 th December 2006, London. Overview. Getting EPrints 3 up and running Installation Upgrading Configuring deposit process workflow autocompletion Plugging in functionality import, export, screen, input component New XML Format

mcewen
Download Presentation

EPrints 3 Technical Overview

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. EPrints 3 Technical Overview EPrints 3 Briefing 8th December 2006, London

  2. Overview • Getting EPrints 3 up and running • Installation • Upgrading • Configuring deposit process • workflow • autocompletion • Plugging in functionality • import, export, screen, input component • New XML Format • Improved indexer • Web service interface

  3. Installation • Download from releases section of files.eprints.org • Platform requirements • Unix (Red Hat Linux recommended) • Core software requirements • apache 2, mod_perl, perl, mysql • Expertise requirements • basic webmaster skills • some Unix experience • confident editing text and XML configuration files

  4. Installation: Run epadmin Tool • Walks you through creating an EPrints 3 repository • core configuration • hostname, repository name • database configuration • creates database • creates EPrints 3 tables in database • creates an initial user account • username, user type, password • creates repository Web pages • Open repository homepage in browser & log in

  5. Upgrading • EPrints 3 is a very significant upgrade • You will need to migrate your EP2 configuration to EP3 • But don’t worry, there is a tool to help you migrate • install EP3 on same server as your EP2 repository • run migration tool • creates copy of your database and configuration • converts them to EP3 • run EP2 and EP3 in parallel • make sure all the changes you made to your EP2 repository are reapplied to your EP3 repository • switch to EP3 as your production repository • Vanilla repositories will migrate with little or no intervention • More advanced repository configurations will need some manual inspection

  6. Running an EPrints Repository • Keep operating system patched • Keep EPrints and plugins up to date • Regularly back up repository data and configuration

  7. Getting Help with Installation/Migration • Step by step instructions • wiki.eprints.org • Technical mailing list • www.eprints.org/software/ • EPrints Services • Build and host • Assess and manage migration process • www.eprints.org/services/

  8. Configuring Deposit Process • Workflow flexibility • Autocompletion options

  9. Workflow Flexibility • EP3 workflows should feel familiar • defined using XML • divided into stages (pages) • More flexible • group related fields together • file upload can appear at any stage in workflow • fields or groups can be collapsed by default • text can be inserted into the workflow • e.g. additional instructions, notices

  10. Workflow Flexibility: Flow Control • EP3 also supports conditional workflow • eg. workflow variations for • different types of eprint • different sorts of users • different kinds of journals • different publication stages • eg. if unpublished don’t need volume, number pages

  11. Workflow Flexibility: Example • A department within your institution wants to use its own classification scheme in addition to your default scheme • Add new scheme to workflow with conditional • check which department the depositor comes from • if the department matches “maths” then include the additional classification scheme in the workflow

  12. Workflow Flexibility: Example XML <stage name="subjects"> <component type="Field::Subject"> <field ref="subjects" required="yes" /> </component> <epc:if test="userid.as_item(){department} = ‘maths'"> <component type="Field::Subject"> <field ref=“maths_subjects" required="yes"/> </component> </epc:if> </stage>

  13. Autocompletion • EPrints 3 autocompletes • author names • journal title • also fills in publisher and ISSN • ISSN • also fills in journal title and publisher • conference title • also fills in location and date • Where are these being looked up? • existing eprints in the repository • the more populated your repository, the more suggestions users will see

  14. Autocompletion: Custom Lookups • Provide a text file (authority list) • a list of names, titles, ... • additional display information • eg. ROMEO authority list • list of journal titles • publisher policy also displayed • community will share at files.eprints.org • Write a custom lookup script to • query external resource/service • eg. staff database • eg. Library of Congress name authority service

  15. Autocompletion: Workflow • Autocompletion can be combined with workflow conditionals • eg. if user is from School of Medicine, look up grant name (and id) in MRC database • eg. if user is from Computer Science department look up authors in ACM authority list

  16. Autocompletion: How Lookup Works • Lookup script is passed the characters that the depositor has typed • Must return matching results as HTML list items • <li> • J Smith (author of 6 items in this repository) • <ul> • <li id="for:value:relative:_name_family">Smith</li> • <li id="for:value:relative:_name_given">J</li> • <li id="for:value:relative:_id">js@gmail.com</li> • </ul> • </li>

  17. Plugging In Functionality • EPrints 3 functionality can be extended with plugins • import and export • get data in and out of the repository • interface screens • add new tools and reports to UI • input components • add new ways for users to enter data • Key design goals • Easy to build • minimal coding • Easy to share • drop in and go • distribute independently of EPrints

  18. Plugins: Writing an Export Plugin • Register • name • will appear on search results page • what it can handle • lists of records or single records (or both) • type of record (eprint, user, subject...) • who can use it • Define 2 core functions • how EPrints record maps to export record • field mapping • how to serialise export record into export format

  19. Plugins: Import Plugins • Reading input can be harder than writing output • detect and handle errors in input • But there are many existing libraries available for parsing a wide variety of file formats

  20. Plugins: Writing an Import Plugin • Register • name • what it can handle • who can use it • Define 2 core functions (export backwards) • deserialise import record from import format • map import record to eprints record

  21. Plugins: Screen Plugins • Drop new tools, actions and reports into the EPrints UI

  22. Plugins: Writing Screen Plugins • Register • where it appears in UI • who can use it • Define functionality • for example...

  23. Plugins: Writing Screen Plugins (2) • New tool available to users • eg. RAE utilities User tools list

  24. Plugins: Writing Screen Plugins (2) • New action to be invoked on an eprint • eg. scan documents for viruses Eprint actions list for depositors (there is also an actions list for editors)

  25. Plugins: Writing Screen Plugins (3) • New report about an eprint • eg. show download statistics Eprint tabs list (each tab is a single screen plugin)

  26. Plugins: Input Component Plugins • Drop custom input controls into the deposit workflow • eg. pick latitude and longitude coordinates from a map • eg. draw a molecule in an applet

  27. Plugins: Writing Input Component Plugins • Define 2 core functions • how to render input control(s) • how to update the record based on what the user entered • Optionally define • how to check the user input is valid

  28. EPrints 3 XML Format • New XML format for import and export • Much more succinct than EP2 format • Embedded documents • document metadata alongside eprint metadata • files themselves can be included inline • base64 encoded • export your whole repository as 1 single XML file • All record types can be imported/exported in this format • eprints, users, subjects, history, access log...

  29. EPrints 3 Indexer • EP2 indexer used the Forth bridge model • index everything then start again • EP3 introduces index queue • on-demand indexing • much less resource intensive! • queues individual metadata fields or files to be indexed rather than entire records • whenever a record changes, the values that got changed are added to the queue • Deposits are indexed sooner

  30. EPrints 3 Web Service • Deposit, retrieve, search and remove records remotely • Currently not part of EPrints 3 core • development team working on security model • ensure actions only carried out by authorised users • testing with various platforms • available on request

  31. Contributing to EPrints 3 • files.eprints.org • for the latest • plugins • authority lists and autocomplete lookup scripts • subject trees • translations • themes (skins) • other tools, utilities

More Related