EPrintsWebConfig

greenbeansneedlesΛογισμικό & κατασκευή λογ/κού

13 Δεκ 2013 (πριν από 3 χρόνια και 10 μήνες)

114 εμφανίσεις

EPrints

Web

Configuratio
n
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

Web
application

Web
config

editor


Command
line
config

editor

config

files

Configuration Files

Every
repository
on each
server has
many
dozens of
configuratio
n 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 Editing

2.
Metadata Schema Management

3.
Phrase Management

4.
Deposit workflow

5.
Bibliographic styles

6.
Views

7.
Searches

Task 1: Editing EPrints pages

All EPrints
pages

templat
e

page
content

+

equals

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

repository

URL

repository

name

Examples

EPrints provides for
static
and
dynamic
page contents

Home Page

About Page

Help Page

Search
Page

Browse
View

Abstract
Page

S
T
A
T
I
C

D
Y
N
A
M
I
C

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>

flow




type

files

subject

core

type

files


format, license,
embargo

core

title, abstract, creators,
date, journal, volume,
publisher, keywords


subject

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>

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>

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>

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 searches



cfg/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,


};