Child pages
  • Variations Server Software Configuration Files - 5.0.7

This space has moved to IU's Confluence.
It is located at https://uisapp2.iu.edu/confluence-prd/display/iulV3/

Skip to end of metadata
Go to start of metadata

Variations Server Software Configuration Files

How to modify the Variations server software configuration files

Contents

Server Configuration Files

File Name

Location

Description

dmlserver.xml

conf/server/dmlserver.xml

Main server configuration file, which is used by Java programs

dmlserver.dtd

conf/server/dmlserver.dtd

This is the document type definition file for dmlserver.xml
This file would not typically be changed, but it can be useful
for understanding the syntax of dmlserver.xml

dmlscript.conf

conf/server/dmlscript.conf

Configuration file for scripts

Server Client Configuration Files

The Variations server needs to run in client mode when doing internal work like loading records. A minimal set of client configuration files are used in the process.

Instructions on editing these files are on a separate page: Configuring the Client - 5.0.7.

File Name

Location

Description

dml.conf

conf/client/dml.conf

Main client configuration file, which is used by server scripts that run in client mode

client_console.lcf

conf/client/client_console.lcf

Client logging configuration file for console directed logging

client_file.lcf

conf/client/client_file.lcf

Client logging configuration file for file directed logging

dmlserver.xml Properties

RMI Server Ports

A range for the RMI server ports used by Variations needs to be set. This range must include at least three numbers. Specifying the range allows one to limit the number of ports that are left open. The default port numbers (shown below) should work as long as they are left open.

<RMIServerPorts startPort="49930" 
                endPort="49935">
</RMIServerPorts>

Library Servers

  • CATALOGING vs PRODUCTION
    Variations consists of two separate servers that connect to different client applications. The cataloging server library_CATALOGING is utilized by digitizers and catalogers to ingest files into the system. The cataloging server is the test and preparation area for files to be brought into the system and cataloged. After a cataloger or digitizer publishes a record, the nighttime cron jobs will transfer files from the cataloging server to the production server. The production server library_PRODUCTION is used by end users to stream and access the records. Essentially Variations uses the two servers to separate the cataloging and ingest process from the every day use environment, providing better performance and stability for end users.

The dmlserver.xml file is divided into two sections corresponding to the different servers. When the directions below specify updating a schema element, be sure to update the information for both the cataloging and production servers, except where noted.

Start of the Production Server's Values

  <!--
  ==================================
      Production library server
  ==================================
  -->

Start of the Cataloging Server's Values

  <!--
  ==================================      
      Cataloging library server
  ==================================  
-->

Authentication Scheme

Client connections to Variations are made by sending the username and encrypted password gathered from the user to Variations in order to do a proxy login using one of the supported protocols. Administrator and cron connections done on the server can use a special login that does not prompt for a password.

Configuring authentication schemes, requires only a few lines in dmlserver.xml. Each scheme consists of a protocol, realm, and configuration. Each supported scheme has an AuthenticationScheme tag that must have a protocol attribute and optionally can have a reportedhostname attribute. Protocol attributes can be set to pop, imap, cas, or krb. The reportedhostname attribute is a string that will replace the realm to form the Variations username (username@realm).

Each protocol has specific attributes that can be set. If the protocol is pop or imap, the port and useSSL attributes can be set. For cas, loginurl is a url prefix string that can be appended to to form a valid CAS login url. Kerberos login requires the jaas login context configuration to be set. This login context must be declared in jaas.config with the appropriate JAAS login module for your site.

Example Authentication Scheme Code
<AuthenticationSchemes>
    <AuthenticationScheme protocol="pop" 
                          port="110" 
                          useSSL="false">
        zink.dlib.indiana.edu
    </AuthenticationScheme>
    <AuthenticationScheme protocol="imap" 
                          reportedhostname ="iu.edu" 
                          port="993" 
                          useSSL="true">
        imap.iu.edu
    </AuthenticationScheme>
    <AuthenticationScheme protocol="cas" 
                          loginurl="https://cas.iu.edu/cas/login?cassvc=DMLP">
        iu.edu
    </AuthenticationScheme>
    <AuthenticationScheme protocol="krb" 
                          reportedhostname="iu.edu" 
                          loginContext="VariationsKerberosContextPasswordAuth">
        ads.iu.edu
    </AuthenticationScheme>
</AuthenticationSchemes>
  • Modification Instructions
    • Delete any Authentication Scheme that you are currently not using.
    • Set the correct values of the authentication scheme selected to match your university's settings.

FileName Scheme

The filename scheme is a complicated subject and will require some reflection by each university. The filename scheme sets the format for the file names that Variations will use and validate. Filenames help Variations manage the records and give a unique id to each item. Other important things to consider include:

  • z39.50
    Variations can interact with your library's z39.50 protocal and match the filename's id to existing biblio records. Since each physical item should have a preexisting z39.50 biblio record, matching the id and the existing record can reduce digitization errors and time. The format of the filename schema listed below would then be dependent on your university's existing z39.50 format.
  • Non z39.50
    Non z39.50 based digitization processes may have a number of other factors to consider. Variations cannot assign more then one value to a record or more then one record to a value, which means you will have to manage unused and used filenames. Furthermore, you cannot change the format for Variations at a later time and therefore must leave enough room for current and future records.

It may be beneficial to discuss this issue with other members of your library, specifically those who are responsible for cataloging and policy issues.

Default FileName Schema Code
<FilenameScheme idFormat="aaadddd" 
                volumeFormat="d" 
                pageFormat="d" 
                recordingFormat="a" 
                scoreSeparator="-" 
                recordingSeparator="-" 
                suffixFormat="a"/>
  • Modification Instructions

The filenames below follow the default filename schema code above:

  • abc1234-a.wav (for a raw wav file for the first wav file in a set of one or more)
  • abc1234-02-003.tiff (for a raw tiff page image for volume 2, page 3, in a score set)

Audio File Processing

If you will be using the mp4 encoder included with Variations to derive mp4 files from wav files, the recommended settings for AudioProcessing are as follows.

Example AudioProcessing Settings in dmlserver.xml
<AudioProcessing incomingDir="/home/dmlserv/content/loader/audio/incoming/" 
                 tempDir="/home/dmlserv/content/loader/audio/temp/" 
                 mp4Processing="false" />
  • incomingDir
    The path to the directory where Variations expects to find the derivative files during the digitization process.
  • tempDir
    Used by Variations for temporary storage during digitization.
  • mp4Processing
    If you will be using some other encoder which does not generate hinted, ready-to-stream files then set mp4Processing attribute to "true" instead. This includes versions of the Variations MP4 Encoder tool before 5.0.6.
  • outputDir (optional)
    The path to the directory where Variations will place the deliverable files.
    This property should only be included for the cataloging server, not for the production server.

Score File Processing

The only currently supported process for test site score digitization is for djvu files to be placed in the incoming score directory on the server. Djvu files can be generated from tiff files using the score encoder tool included with Variations. Settings for score processing should be set as follows.

Example ScoreProcessing Settings in dmlserver.xml
<ScoreProcessing incomingDir="/home/dmlserv/content/loader/score/incoming/" 
                 tempDir="/home/dmlserv/content/loader/score/temp/" 
                 djvuProcessing="false" />
  • incomingDir
    The path to the directory where Variations expects to find the derivative files during the digitization process.
  • tempDir
    Used by Variations for temporary storage during digitization.
  • outputDir (optional)
    The path to the directory where Variations will place the deliverable files.
    This property should only be included for the cataloging server, not for the production server.

Theme Base URL

The ThemeBaseURL element specifies the web address of the parent directory of theme image files. This value should be set by initialization script initVariations.sh and should not need to be modified.

System Properties

The SystemProperty elements listed below are set for the server and are passed to clients when they connect.

Example System Properties Code
<SystemProperties>
    <SystemProperty name="dml.client.url.userguidebase">
        http://Webserver.dlib.indiana.edu/variations/use/
    </SystemProperty>
    <SystemProperty name="dml.client.url.v2x">
        http://Webserver.dlib.indiana.edu/variations/cgi-bin/variationsURL.v2x?type=
    </SystemProperty>
    <SystemProperty name="dml.client.url.access">
        http://Webserver.dlib.indiana.edu/variations/cgi-bin/access.pl?id=
    </SystemProperty>
    <SystemProperty name="dml.client.url.catalog">
        http://Catalog.dlib.indiana.edu/iudl/iucat/
    </SystemProperty>
    <SystemProperty name="dml.client.cataloglink">
        true
    </SystemProperty>
    <SystemProperty name="dml.client.cataloglink.message">
        Link to IUCAT
    </SystemProperty>
    <SystemProperty name="dml.client.institutionName">
        Indiana University
    </SystemProperty>
    <SystemProperty name="dml.client.messages.howtoFixDeniedAccess">
        Talk with your Variations administrator about obtaining access to this item.
    </SystemProperty>
    <SystemProperty name="dml.client.messages.deniedAccess">
        You do not have permission to access this item.
    </SystemProperty>
    <SystemProperty name="dml.search.messages.someItemsUnavailable">
        Some items may be unavailable from your location.
    </SystemProperty>
    <SystemProperty name="dml.digitizer.useMP4">
        true
    </SystemProperty>
    <SystemProperty name="dml.digitizer.compression">
        AAC 192 kbps
    </SystemProperty>
    <SystemProperty name="dml.digitizer.defaultLocation">
        Cook Music Library
    </SystemProperty>
    <SystemProperty name="dml.z3950.Container.enabled">
        true
    </SystemProperty>
    <SystemProperty name="dml.z3950.Container.host">
        es33.uits.indiana.edu
    </SystemProperty>
    <SystemProperty name="dml.z3950.Container.port">
        2200
    </SystemProperty>
    <SystemProperty name="dml.z3950.Container.database">
        Unicorn
    </SystemProperty>
    <SystemProperty name="dml.z3950.Container.field.id.name">
        any
    </SystemProperty>
    <SystemProperty name="dml.digitizer.csws.url">
        http://variations-ws.dlib.indiana.edu/jaxrpc-CSWS/csws/
    </SystemProperty>
</SystemProperties>
  • Modification Instructions
    • Manually Set Properties
      The values of the properties in the following table must be configured manually.

      Property Name

      Example Value

      Description

      dml.client.url.catalog

      http://Catalog.dlib.indiana.edu/iudl/iucat/

      URL of your university's local library catalog

      dml.client.cataloglink.message

      View IUCAT Record

      The message to display in the Viewer if the catalog link is enabled
      (Changed from dml.viewer.cataloglink.message in Variations 5.0)

      dml.client.institutionName

      Indiana University

      The name of your institution. This is displayed in the streaming status in the player

      dml.digitizer.defaultLocation

      Cook Music Library

      The location used as the default item location when digitizing. This location identifies where the item being digitized is from. This is useful when an institution has multiple libraries. Set this value to the location where most of the items you are digitizing are kept. Note that this value needs to exist in the Location vocabulary file, see Vocabulary Files for more information.

      dml.z3950.Container.host

      es33.uits.indiana.edu

      Hostname for Container Z39.50 searches

      dml.z3950.Container.port

      2200

      Port for Container Z39.50 searches

      dml.z3950.Container.database

      Unicorn

      Database for Container Z39.50 searches

    • Optional and Already Configured Properties
      The values in the following table are configured by the Initialization script initVariations.sh or have default values that don't need to be changed. These values should only be changed when necessary. For example if your university is using a different compression rate, then you should change the dml.digitizer.compression value.

      Property Name

      Example Value

      Description

      dml.client.messages.howtoFixDeniedAccess

      Talk with your Variations administrator about obtaining access to this item.

      Message displayed when a user does not have access to a recording or score. This message tells the user how to remedy the situation.

      dml.client.messages.deniedAccess

      You do not have permission to access this item.

      Message displayed when a user does not have access to a recording or score.

      dml.search.messages.someItemsUnavailable

      Some items may be unavailable from your location.

      This message warns the user that some items may be unavailable at their location.

      dml.client.cataloglink

      true|false

      Enable or disable the catalog link in the Viewer instead of a View Details link
      (Changed from dml.viewer.cataloglink in Variations 5.0)

      dml.digitizer.useMP4

      true

      Adds video/mp4 as the file type when digitizing instead of the default video/quicktime

      dml.digitizer.compression

      AAC 192 kbps

      The compression type and rate that should be stored in the metadata

      dml.z3950.Container.enabled

      true|false

      Enable Z39.50 Searches on Container records

      dml.z3950.Container.field.id.name

      any

      Field to search on in Z39.50 for a unique id

      dml.client.url.userguidebase

      http://Webserver.dlib.indiana.edu/variations/use/

      URL of Variations user guide

      dml.client.url.v2x

      http://Webserver.dlib.indiana.edu/variations/cgi-bin/variationsURL.v2x?type=

      URL of Variations v2x generator

      dml.client.url.access

      http://Webserver.dlib.indiana.edu/vatiations/cgi-bin/var/access?

      URL of Variations access pages

      dml.client.url.themes

      http://Webserver.dlib.indiana.edu/variations/themes/

      URL of Variations themes

      dml.digitizer.csws.url

      http://variations-ws.dlib.indiana.edu/jaxrpc-CSWS/csws/

      URL of Variations "Import Tracks" web service

      dml.digitizer.audio.filecheck

      derivatives|originals|none

      Sets whether the digitizer client should ask the server to check for original or derivative files when a file is added to a container. If this property is not present, the server file check defaults to derivatives.

      dml.digitizer.score.filecheck

      derivatives|originals|none

      Sets whether the digitizer client should ask the server to check for original or derivative files when a file is added to a container. If this property is not present, the server file check defaults to derivatives.

      dml.client.search.noPaging

      true|false

      Sets whether paged searching should be disabled or not. If this property is not present or set to anything other than true, it is assumed to be false.

Lease Manager

The Lease Manager should work as is after running initVariations.sh (and assuming the default directories are used for content and leases).

<LeaseManager rmiHost="Server1.dlib.indiana.edu" 
              rmiPort="1099"
              rmiServiceName="LeaseManager">
    <LeaseResource contentType="audio">
        <LibraryName>
            IU
        </LibraryName>
        <AccessURL>
            http://Webserver.dlib.indiana.edu/variations/cgi-bin/generate-ref-movie.mov?path=/
        </AccessURL>
        <ContentDir>
            /home/dmlserv/content/audio-objects
        </ContentDir>
        <LeaseDir>
            /home/dmlserv/content/streaming/leases
        </LeaseDir>
    </LeaseResource>
    <!-- How long will a lease remain valid (in minutes)? -->
    <LeaseLifeTime>
        480
    </LeaseLifeTime>
</LeaseManager>

dmlscript.conf Properties

The file dml/conf/server/dmlscript.conf is intended to be used as a script configuration file to avoid the hard coding of installation-dependent values in scripts.

Properties whose values must be set Manually

Property

Example Value

Description

dml.xslt.access.institutionname

Indiana University

The institution name used on access pages.

dml.server.jdbc.connector

/usr/local/lib/mysql-connector-java-5.0.4-bin.jar

The JDBC connector jar for the database. This may already be set correctly

dml.xslt.access.subtitle

The Indiana University Digital Music Library

Subtitlte for audio recording access pages.

dml.xslt.access.catalogurl

http: //Catalog.dlib.indiana.edu/iudl/iucat/

URL of site's OPAC (Online Public Access Catalog)

dml.xslt.access.cataloghelp

View IUCAT catalog entry for this item

Display text for OPAC information link on an
access page for an audio recording.

Properties whose values are already set or optional

Property

Example Value

Description

dml.server.libraryServerNames

IU_CATALOGING IU_PRODUCTION

The names of the library servers (which will also be the names
of the metadata database schemas).
This information is used by the Variations startup and
shutdown scripts to know which servers to start and stop

dml.server.leaseManagerNames

LeaseManager

The names of the lease managers. This is used by the startup and
shutdown scripts.

dml.server.scoreFileHandlerNames

 

The names of the score file handlers. This is not supported
for phase 1 of the Variations3 project

dml.server.jdbc.dbType

MySql

The type of the server database

dml.server.sqlRepository.userid

dmlserv

The user id for the MySQL metadatabase account on the local host.

dml.server.userProfileManager

dmlserv

The user id for the MySQL access manager database on the local host.

java.protocol.handler.pkgs

com.ibm.net.ssl.www.protocol

List of package name prefixes used to resolve protocol names
(e.g., http:, ftp: ) in URLs into actual handler class names.
In general, this should not be changed from the default value.

dml.server.script.library

IU_CATALOGING

Server library to use for scripts that operate as clients

 

Settings for use in statistics scripts

 

dml.statistics.path

/home/dmlserv/content/statistics

Directory where generated statistics files are stored.

dml.statistics.uilogpath

/home/dmlserv/log/ui_session.log

File where user session information is stored.

dml.statistics.dsslogpath

/var/streaming/logs/

Directory where Darwin streming server logs are stored.

dml.statistics.ipfile.inlibrary

/home/dmlserv/data/statistics/musicLibrarySTCmachines.txt

File with IP addresses for music library computers.

dml.statistics.ipfile.oncampus

/home/dmlserv/data/statistics/onCampusmachines.txt

File with IP address ranges for on campus machines

dml.statistics.urlpath

http: //Webserver.dlib.indiana.edu/variations/statistics

URL for Variations statistics data directory.

dml.statistics.abouturl

http: //Webserver.dlib.indiana.edu/variations/about.html

URL of page with information about Variations statistics.

dml.statistics.cssurlpath

http: //Webserver.dlib.indiana.edu/variations/dml1.css

URL of the Cascading Style Sheet used for Variations statistics.

dml.accesspage.urlpath

http: //Webserver.dlib.indiana.edu/variations/cgi-bin/access.pl?id=

Base URL of access pages - web pages
for accessing audio recordings and scores.

 

Settings for reference movies

 

dml.leases.rtspurl

rtsp://Streaming.dlib.indiana.edu/leases/

 

dml.leases.path

/home/dmlserv/content/streaming/leases/

 

 

Configurable options for xslt sytlesheets

 

dml.xslt.access.v2xurl

http: //Webserver.dlib.indiana.edu/variations/cgi-bin/variationsURL.v2x?type=player&container_id=

 

dml.xslt.access.cssurl

http: //Webserver.dlib.indiana.edu/variations/access.css

URL for cascading style sheet for access pages.

dml.xslt.access.logourl

http: //Webserver.dlib.indiana.edu/variations/v2-logo.jpg

URL for Variations logo image.

dml.xslt.access.whereurl

http: //Webserver.dlib.indiana.edu/variations/use/where.html

 

dml.xslt.access.userguideurl

http: //Webserver.dlib.indiana.edu/variations/use

URL for online Variations User Guide

dml.xslt.access.supporturl

http: //Webserver.dlib.indiana.edu/variations/use/support.html

URL for online Variations support

dml.xslt.access.score.v2xurl

http: //Webserver.dlib.indiana.edu/variations/cgi-bin/variationsURL.v2x?type=viewer&container_id=

 

dml.xslt.access.score.htmlurl

http: //Webserver.dlib.indiana.edu/variations/scores/

 

 

Settings for access.pl

 

dml.access.recording.dir

/home/dmlserv/content/access/audio/

Directory for audio access pages

dml.access.score.dir

/home/dmlserv/content/access/score/

Directory for score access pages

dml.access.recording.xslfile

/home/dmlserv/data/accessPages/access.xsl

XSL (Extensible Stylesheet Language)
file for transforming XML audio
access page to HTML

dml.access.score.xslfile

/home/dmlserv/data/accessPages/score-access.xsl

XSL (Extensible Stylesheet Language)
file for transforming XML score
access page to HTML

dml.access.supporturl

http: //Webserver.dlib.indiana.edu/variations/use/support.html

URL for online Variations support

 

Settings for variationsURL.v2x

 

dml.v2x.supporturl

http: //Webserver.dlib.indiana.edu/variations/use/support.html

 

dml.v2x.whereurl

http: //Webserver.dlib.indiana.edu/variations/use/where.html

 

Vocabulary Files

A number of files located in data/vocab/ provide string values used in the metadata. The only vocab files that should be changed are AudioDigitizationEquipment.vcb, ImageDigitizationEquipment.vcb, and Location.vcb. Equipment that could potentially be used for digitization should be listed one on a line in the Audio and Image Digitization Equipment vocab files. The Locations vocab file should list where physical copies of digitized material are stored. These files are used by both the Variations server and client. Specifically, in the digitizer and cataloger client interface, these values are displayed as options in drop-down boxes when adding metadata. The values of these files will pulled down by clients as needed. Changes to these files do not require a server restart, but clients will need to be restarted to pick up the new values.

Next Steps

Return to the Installing the Variations Server Software page to continue the process.

  • No labels