Upload
anthony-ruiz
View
228
Download
4
Tags:
Embed Size (px)
Citation preview
EPrintsWebConfiguration Management
SQL database Web server Scripts to configure repository activities Configuration files
EPrints - the Administrator's View
Orientation
Where is the configuration information?
On the Server: The EPrints Folder
EPrints Folder: Configuration
Global configuration for all repositories
Repository-specific configuration for each repository
One EPrints install can run multiple repositories
each may be very different in style & functionality
EPrints Folder: All of the Archives
Contents of archives Folder
A subdirectory for every active repository
Contents of individual archive folder
The configuration files for this repository
Contents of individual archive directory
PDFs etc.
Contents of individual archive directory
Processed static webpages (e.g. home page, abstract pages and views). This is where content gets served from.
Contents of individual archive directory
Temporary files
Contents of individual archive directory
Layers of Configuration Management give a wide range of power and flexibility
Configuration Files
Every repository on each server has many dozens of configuration files.
Command line Editing
Command line editing requires the authorisation to get terminal access to the server, and the skill to use the command line shell and text editors.
Web Configuration Editing
Web configuration editing allows config files to be edited in a web page. You still need to understand the config file contents and where they go, but it is more convenient.
Phrase Editor Application
Lists all phrases used by the repository Edit or add new ones
You don’t need to know about the config files at all - the phrase editor reads and writes them for you and shows their contents in an easy-to-understand way.
Metadata Editor Application
Lists all metadata used by the repository Add new metadata fields
You don’t need to know about the config files at all - the metadata editor reads and writes them for you and shows their contents in an easy-to-understand way.
Web Page Editor Application
Allows you to edit the repository template and home pages You don’t need to know about the config files at all - the
web page editor reads and writes them for you and shows their contents in an easy-to-understand way.
Now in Web browser
Configuration can now be viewed and edited from the web browser instead of the command line
The config file structure is mimicked in the display’s tree structure
Some tasks have bespoke interface Phrases, subjects, metadata schema All the underlying config files can still
be accessed on command line
Caveat Administrator
Config files contain either XML Raw data Perl data
Perl files are programs! EPrints does not allow Perl
editing by default You must specify +config/edit/perl in the administrator’s roles
Introduction to Configuration
We will some of the more important configuration by looking at common tasks
1. Page Editing2. Metadata Schema Management3. Phrase Management4. Deposit workflow5. Bibliographic styles6. Views7. Searches
Task 1: Editing EPrints pages
All EPrints pagesAll EPrints pages
templatetemplate
page contentpage content
++
equalsequals
The template provides a uniform style
It sets the layout and visual structure e.g. 1-column fixed width vs 3-column liquid
It imports all the necessary stylesheets and scripts
It uses “university brand” images, colours and designs
Templates assemble many different fragments of content into a complete Web page
The template is a skeleton HTML file with named “pins” that insert different bits of content in the right place in the page structure
repositoryURL
page
content
page title
repositoryname
Examples
EPrints provides for static and dynamic page contents
Home Page
About PageHelp Page
Search Page
Browse View
Abstract Page
STATIC
STATIC
DYNAMIC
DYNAMIC
Editing Repository Pages
The Edit Page screen assembles the template and page content into a single HTML file for editing by a web page editor.
Or, you can separately edit the template
and the page contents
cfg/lang/en/templates/default.xml
cfg/lang/en/static/index.xpage
Task 2: Metadata Schema Control
EPrints uses the same familiar metadata workflow interface to enter new metadata and to define new kinds of metadata for eprints, documents and users.
• add new fields for local requirements• text, dates, booleans, names, compound• restricted vocabularies
Metadata Schema
The “Manage Metadata Fields” screen lists the current set of fields in the
database Allows you to easily create new fields on
the fly It allows you to add new fields to
eprints , documents , users
As well as creating the fields, it adds phrases for names and help text places in the deposit workflow
Task 3: EPrints Phrases
All EPrints screens and fields and buttons are given structured ids e.g. eprint_fieldname_creators
and each id is given a phrase in one or more languages The Phrase Editor lists all the structured ids and lets you change
the human language phrases.
Task 4: Deposit Workflow
The deposit pages are shown to users in a specific order
this is specified in a workflow configuration file: cfg/workflows/eprint/default.xml <flow>
<stage ref="type"/> <stage ref="files"/> <stage ref="core"/> <stage ref="subjects"/> </flow>
flowflow
type
type
files
files
subject
subject
core
core
typetypefiles
format, license, embargo
filesformat, license,
embargocoretitle, abstract, creators, date,
journal, volume, publisher, keywords
coretitle, abstract, creators, date,
journal, volume, publisher, keywords
subjectsubject
The EPrints deposit workflow is specified by an XML document.
It contains a flow element which points to a number of stages. Each stage will appear in a separate web page.
Each stage element contains a number of components and fields.
Components are boxes on the web page. Fields are metadata input items.
Components can be divided between any number of stages.
EPrints Workflow
<stage name="core"> <component> <field ref="title" required="yes"/> </component> <component> <field ref="abstract"/> </component></stage>
<stage name="core"> <component> <field ref="title" required="yes"/> </component> <component> <field ref="abstract"/> </component></stage>
Notes
The EPrints phrase used for the ‘core’ stage is “Details”. You can change it in the phrase editor.
The title field is required, so it gets a red star next to it.
Sample Workflow with Displayed Result
<component collapse="yes"><field ref="note"/></component><component collapse="yes"><field ref="note"/></component>
A component can be set to collapse and its contained field is hidden by default.It appears again when the user clicks on the reveal button.
collapsed revealed
Collapsed Components
Conditional Components
A component can be made conditional, using elements from the EPrints Control (or epc) format.
Here the thesis_type field will only be shown for eprints if they are declared to be of type thesis, and not for books or journal articles.
epc:choose provides another kind of conditional test.
For more details about controlling the visibility of components, see
EPrints Control format (EPC)http://wiki.eprints.org/w/EPrints_Control_Format
EPScript language http://wiki.eprints.org/w/EPScript
<epc:if test="type = 'thesis'"> <component><field ref="thesis_type"/></component></epc:if>
<epc:if test="type = 'thesis'"> <component><field ref="thesis_type"/></component></epc:if>
Task 5: Bibliographic Formats
EPrints uses rules to create “bibliographic references” whenever it refers to an eprint
In the abstract page In a list of search results On a view page
These rules (the bibliographic styles) are expressed in an XML language
(Same language as used in workflows)
Task 5: Bibliographic Formats (2)
Galil, L. and Utsunomiya, R. (2005) Mexican Musk Turtles and Man. Animal Issues, 18 (19). pp. 146-193.
<choose> <when test="type = 'book' and is_set( creators )"> <print expr="creators_name"/> </when> <when test="type = 'book' and !is_set( creators )"> <print expr="editors_name"/>, ed<if test="length(editors_name) gt 1">s</if>. </when> <when test="type = 'patent'"> <print expr="patent_applicant"/> </when> <otherwise> <print expr="creators_name"/> </otherwise></choose><if test="date">(<print expr="date" opts="res=year"/>)</if><cite:linkhere><xhtml:em><print expr="title" opts="magicstop"/></xhtml:em></cite:linkhere>
cfg/citations/eprint/default.xml
Task 6: Making Views
Rules for generating the views / collections cfg/cfg.d/views.pl
{ id => "types", fields => "type", order => "-date/title", hideempty => 1,},
Task 7: Making Searches
Rules for making different searchescfg/cfg.d/search.pl
$c->{search}->{simple} = { search_fields => [{id => "q", meta_fields => [$EPrints::Utils::FULLTEXT,"title","abstract","creators_name","date" ] },], preamble_phrase => "cgi/search:preamble", title_phrase => "cgi/search:simple_search", citation => "result", page_size => 20, order_methods => { "byyear" => "-date/creators_name/title", "byyearoldest" => "date/creators_name/title", "byname" => "creators_name/-date/title”, "bytitle" => "title/creators_name/-date"}, default_order => "byyear", show_zero_results => 1, };