EMu 4.0.03

Release Date: 11 May 2011



pdfDownload a PDF document containing these release notes and associated documents.

Please see the latest version of the EMu Help for the most up to date version of this documentation.

New Features

IMu Web Framework

IMuThe IMu web framework provides a series of tools for distributing data held within EMu via the Intranet/Internet. IMu includes:

  • A structure for developing web pages to access your collection. The structure includes:
    • Theme-able pages.
    • MVC (Model-View-Controller) setup (XML > XSLT > HTML).
    • Collection List Management.
    • Search and display results from multiple modules.
    • Customisable interface via XSLT.
  • Extensible application server allowing new functionality to be "plugged in" via handlers.
  • Libraries to develop web applications for the following languages:
    • Java
    • .Net
    • PHP
    • Perl

Information about IMu APIs can be found here.

Multiple Group Support

Multiple Group support allows a user to be a member of more than one group. The EMu Registry entry that defines the group into which a user is placed has been extended to allow a semicolon separated list of groups to be specified. For example:User|badenov|Group|Loans Officer;CuratorThe above entry indicates user badenov is a member of two groups, Loans Officer and Curator. If a user is a member of multiple groups, the EMu Login screen provides a drop-list with the groups that the user is a member of:


The group selected becomes the active group and is used to determine permissions until another group is selected. The Security tab in the Options dialogue allows another group to be chosen:


When the active group is changed, a dialogue displays allowing the user to indicate how opened modules should be handled:


Any module left open will remain in its existing group. Hence it is possible to have two (or more) modules open, each in a different group. The permissions used for a given module are dictated by the group in which the module exists. The module's group is displayed in the status bar at the bottom of the module window.

A complete description of the support for multiple groups can be found in the pdfMulti-group Support documentation.

Encrypted Connections

Encrypted connections support allows all data transmissions between the EMu client and server to be encrypted. As part of the login process, X509 based certificates are exchanged allowing EMu clients to ensure they are connecting to the correct EMu server. TLS v1.0 (Transport Layer Security) is used to provide the encryption. System administrators may choose the encryption cipher used, allowing different levels of compression and security to be configured. The EMu server may be configured only to accept encrypted connections, otherwise encryption is optional.

Encrypted connections are also supported for:

  • Java connections (TexJDBC)
  • C/C++ connections (TexAPI)
  • perl connections (texapi.pm)

A complete description of the support for encrypted connections can be found in the pdfEncrypted Connections documentation.

Read-only Modes

A new Registry entry allows System Administrators to make part or all of EMu read-only. The format of the new entry at a system wide level is:


At a table level the format is:


where value is either:

  • true - read-only functionality is enabled.
  • false - read-only functionality is disabled.

A complete description of the support for read-only modes can be found in the pdfRead-only Modes documentation.

Exhibition Objects Module

There is a new module available to all clients. The Exhibition Objects module sits between the Catalogue and Events modules storing information about an object at a particular exhibition. When an object is added to an event, an Exhibition Objects record is created automatically. The Exhibition Objects record may then be used to record the usage of the object throughout the exhibition:


The Exhibition Objects module requires client specific configuration and is not automatically available with your upgrade to 4.0.03. Please contact KE for information on how to make this new module available for use.

A complete description of the Exhibition Objects module can be found in the pdfExhibition Objects documentation.

Field Help Display

A new option allows the field level help for a given field to be displayed below a module's Status bar. The help display area may be re-sized to suit:


The Show Field Help in Module Window option is located on the General tab in the Options dialogue:


Schedule Internal Movements

The Movements module has been extended to allow internal movements to be scheduled as though they were external movements. This is often the case when an internal movement requires objects to be shifted between off-site storage facilities:


When the Date Moved is completed the system will ask if the attached objects should be relocated:


An affirmative response will relocate all objects to the new location.

Internal Pest Management Modules

Two new modules are available to all client. These modules provide pest management support:

  • Traps - records information about the types and locations of traps used by an institution to capture pests:


  • Trap Events - records information about what was found in a trap at a given date and time:


    The Traps and Trap Events modules require client specific configuration and are not automatically available with your upgrade to 4.0.03. Please contact KE for information on how to make these new modules available for use.

A comprehensive set of reports provide graphical data about the prevalence of pests within your institution.

Multimedia Web Service

The Multimedia Web Service is an IMu service providing HTTP based access to the EMu Multimedia Repository. The following functions are provided:

  • Resource Request - ask for a multimedia resource (image, video, document, etc.). For image based resources a height, width and/or format may be specified, allowing images to be generated "on-the-fly".

  • Metadata Request- return any metadata associated with the resource. The metadata is an XML marked-up version of the data in the Multimedia record. For image based resources the following additional metadata formats are available:Resource Discovery - search the Multimedia Repository for resources with a given file name.

    • EXIF
    • IPTC
    • Dublin Core 
  • Resource Listing - list all resources stored in the Multimedia Repository.
  • Resource Insertion - add a new resource to the Multimedia Repository.
  • Metadata Update - update the metadata (fields in the Multimedia record) for a given resource.
  • Resource Replacement - replace the resource file (image, document, etc.) associated with a Multimedia Resource record.
  • Resource Deletion - remove a resource from the Multimedia Repository permanently.

A complete description of the Multimedia Web Service can be found in the pdfMultimedia Web Service documentation.

OAI Service Web

The OAI (Open Archives Initiative) Web Service is an HTTP IMu service implementing the OAI 2.0 protocol. The service implements the six verbs required of all OAI repositories, namely: 

  • Identify - request a summary of the service. 
  • ListMetadataFormats - provide a list of the metadata formats the repository supports (e.g. Dublin Core, etc.). 
  • ListSets - provide a list of data sets available for harvesting. 
  • ListIdentifiers - provide a list of unique record identifiers (for EMu this consists of the institution acronym combined with the module name and record IRN).
  • ListRecords - retrieve a list of records in a given data set.
  • GetRecord - retrieve an individual record. 

A complete description of the OAI Web Service can be found in the pdfOAI Web Service documentation.




Edit Resource command

A new command has been added to the Multimedia Repository allowing a user to invoke an external editor to modify the multimedia resource (image, document, etc.). The Edit Resource command downloads the resource from the EMu server, invokes an editor and monitors the file for any changes. It also looks for any other files created with the same name as the resource file, but with a different extension (file type). When EMu receives focus the user is asked whether the modified file should be re-imported into the Multimedia Repository. An affirmative response saves the resource on the EMu server and generates any resolutions, etc. The new command streamlines the process of modifying multimedia resources:


XMP and IPTC upgraded

The Multimedia Repository has been upgraded to support the latest versions of the IPTC and XMP metadata standards. The standards implemented are:

  • IPTC Core Version 1.1
  • IPTC Extension Version 1.1
  • XMP July, 2010

Login details on a per client basis

The Host/User/Service/Group login values are remembered on a per client basis. If an institution runs multiple clients, the details displayed in the login dialogue are the values from the last time that particular client was run, rather than the values for the last time any client was invoked.

In order to facilitate this change in EMu 4.0.03 or later, the following entry is added to the Windows Registry:
HKEY_CURRENT_USER\Software\KESoftware\EMu\ClientOptions\KE EMu (clientname)

Please note that earlier versions of EMu still consult the following Windows Registry entry:

Change password utility uses SSH

The administration task allowing a user to change their password now uses SSH (secure shell) to effect the change. Previously TELNET was used, requiring the TELNET service to be enabled on the server for the utility to work. By using SSH, the TELNET service no longer needs to be enabled, rather the SSH service is required. Most sites enable SSH to allow secure access to the EMu server.

ICS support for notifications

The EMu notification system, used to generate email notifications and HTML pages for upcoming activities (loans, events, task, etc.), now builds an iCalendar (.ics) file containing upcoming dates. The iCalendar file may be imported into a large number of products, including:

  • Google Calendar
  • Apple iCal
  • IBM Lotus Notes
  • Microsoft Outlook

Once imported, the upcoming dates, along with a detailed description, are incorporated into the user's calendar.

Reverse scheduling of tasks

The Task tab functionality has been extended to allow the completion and start dates of each task to be computed by specifying the overall completion date. The new functionality allows a user to set the date on which all tasks should be completed and have EMu calculate the start and completion dates for each task.

Creation of attached records

In order to streamline the creation of related records, a set of record creation commands has been added to the Tools>New menu:


The selection of a record creation command will start up a new instance of the selected module in New mode with a link to the original record in place. Any objects attached to the originating record that are selected are added to the record created. If objects are not selected, all objects are added to the new record.

For example, while in the Events module the user may select from the list of objects in the event and select Tools>New>Loan records for this Event. The command will start a new instance of the Loans module in New mode. The Associated Event field will be linked back to the Events record and the Objects field will contain the selected objects from the Events record. If objects are not selected, then all objects are attached.

The command exists for the following modules:

  • Events -> Loans
  • Events -> Conservation
  • Loans -> Movements
  • Loans -> Conservation
  • Movements -> Conservation
  • Traps -> Trap Events

Link from Conservation to Movements

A link has been added from the Conservation module to the Movements module to allow associated movements to be recorded. If the reason for the movement is transporting the object to another location for conservation work, the associated movement allows the movement details to be recorded against the conservation record:


Modifications to emuperiodic

The emuperiodic server-side command is used to run tasks on a regular basis. In particular, it is used to generate the raw data for the Statistics module. The command has been extended to allow:

  • Individual scripts to be specified, restricting the scripts executed.
  • Execution of local scripts only, via the -l option.

Drag and Drop on Archive Tab

The Archive tab in the Catalogue module displays the relationship between the current record and all other records in the same archive. It is now possible to relocate the current record by dragging it to another position in the archive tree. When the record is dropped, the user may select how the current record should be positioned relative to the record on which it was dropped:


Read-only records in List View

The display of read-only records in List View has been changed. Read-only records are now displayed with a grey background and black text, rather than the harder to read, grey text on a white background:


emusecurity run automatically when required

A new Audit Trail handler has been added that monitors the EMu Registry for changes where a user's settings have been modified. Where settings have been changed, emusecurityis executed to update the security settings for all EMu databases. The following events are handled:

  • Addition of a new user.
  • Deletion of an existing user.
  • Changing the group(s) of an existing user.
  • Altering database security via the Security Registry entry.

There should be no need to run emusecurity manually.

Image Quality available for JPEG 2000

When generating JPEG 2000 based images, the Image Quality may now be defined. The Image Quality determines the level of sampling used when creating the image. The value is between 1 and 100, where 100 implies full sampling, that is no lose of image quality, and 1 represents the least amount of sampling, resulting in a much smaller file size, but with image degradation.



Issues Resolved

Issue Resolution

The functions used to convert between imperial and metric units are, in many cases, built into specific clients. Each function is essentially the same with minor differences. The minor differences cause some conversions to compute an incorrect precision for the calculated value.


All conversion functions have been merged and checked to ensure the correct precision is implied for the calculated value.

When a conversion is applied between different units (e.g. feet to metres), the value entered by the user is flagged as the "Original" value. The flagging of the original value requires a number being placed in an Orig column indicating which field had the data entered. In some instances the Orig column may be shown as a text field when used in reports, rather than as an integer field.


All Orig fields have been updated to be integer based.

The Narrower Terms and Used For fields in the Thesaurus module do not have attachment buttons displayed, even though they are attachment fields. The buttons are missing from Query and Detail modes.


The attachment buttons have been enabled for Narrower Terms and Used For, in both Detail and Query modes.

If you enter a term into a Thesaurus controlled field that has the Thesaurus Validation Registry entry set to none, and the term entered appears in the Thesaurus, but not by itself (e.g. the term sports was entered, but only Sports Car exists in the Thesaurus), the term entered is cleared if you do not select a term. The current functionality makes it impossible to save a record with the original term as it is always cleared.


The term entered is no longer cleared if a term is not selected from the Thesaurus where the Validation Registry entry is set to none.

If a multi-term query is performed on an attachment field, where the field searched in the attached module has Also Search Registry entries associated with it, the query generated may not be the most efficient one possible.


The query generated for multi-term attachment queries where the attached column has Also Search Registry entries is now efficient.

For systems running in UTF-8 mode, the Audit Trail mechanism will drop audit records containing invalid UTF-8 characters. As the audit records are not posted to the Audit Trail table a "gap" may appear in the audit trail. The issue only occurs where invalid data is stored in a record (normally as a result of bad data when importing into EMu).


The Audit Trail mechanism now replaces invalid UTF-8 characters with the invalid UTF-8 character (0xFFFD). The substitution allows the audit record to be processed without error.

The View>Attachments command, used to show all records attached to the current record, displays modules the user does not have permission to use. While it is useful to see whether any records in the module attach to the current record, the module cannot be invoked without displaying a permission denied error.


The View>Attachments command has been modified to show only those modules the user has permission to access. A check box has been added to Show all modules, allowing the old behaviour to be selected.

If a Taxonomy record is re-parented to a name with a higher rank, the intervening ranks are not discarded from the Hierarchy tab.


Re-parenting now causes the intervening ranks to be removed from the Hierarchy tab.

An Access Violation message may be displayed when visiting the Hierarchy tab in the Narratives module. The message is displayed only if a hierarchy of narratives exists.


The message no longer appears when displaying the Hierarchy tab where a hierarchy of narratives exists.

When importing records into a Catalogue that uses the location SPLIT facility (used in parent records to indicate the child records are not all at the same location), spurious Internal Movements records may be created, even though none of the child records has been relocated. The spurious Internal Movements records note the location as unchanged.


Spurious Internal Movements records are no longer created when importing records into a Catalogue that uses the SPLIT location facility.

A Data validation failed on LatCentroidLongitude0 message may be displayed when calculating centroid values from decimal numbers. If converting the decimal value to degrees/minutes/seconds causes the seconds value to be close to 60, a rounding error may cause a value of 60 to be used. As this is not a legal value the error message is displayed.


When converting decimal values to degrees/minutes/seconds where the second value may result in 60, the minute value is incremented and the seconds reset to zero.

The mode displayed in the Module Title bar may be repeated when switching between display languages (e.g. English to Arabic).


The mode is no longer repeated when the display language is switched.

The emulutsupdate server-side script does not update Lookup List files in local/luts/default if it exists. Files in the luts/default directory are always updated. The issue means that localised versions of Lookup Lists may not be updated correctly by EMu upgrade scripts.


Local versions of Lookup List file are now updated by the emulutsupdate server-side command.

A number of the background loads used to synchronise data require the fifo load to be running when they are started. The emuload command does not check to ensure the fifo load is running before starting other background loads.


emuload checks the fifo load is running before starting any other background load. If the fifo load is not running, it is started, then any other loads listed are invoked.

If the Thesaurus module is opened in Browse mode, a term is selected in the tree, and then Details mode is chosen, the term record displayed may be read-only, even if the user has edit privileges.


The term record is now displayed with the correct permissions, rather than being read-only.

If the Thesaurus module is maximised or enlarged in Browse mode and the window splitter is moved to the right to increase the size of the terms tree, after which the module is returned to normal size, the fields on the Browse tab may disappear off the right hand edge of the page.


The fields on the Browse tab are displayed in the correct position when the Thesaurus module is re-sized.

If a second alternate term is added to a Thesaurus record, where the record was saved after the first alternate term was entered, an error message may display indicating non unique terms are present.


The Thesaurus record now saves without error when a second alternate term is entered.

If the Refresh tree option is selected in the Thesaurus module and the current record has Use and Use For terms, then the Use and Use For terms are repeated at the top of the Browse tree. The terms are repeated each time the Refresh option is invoked.


The Use and Use For terms are no longer repeated when the Refresh option is invoked.

An Access Violation message may be displayed when switching the display language in the Thesaurus module where the Browse tree is empty.


The message no longer appears when switching languages in the Thesaurus module with an empty Browse tree.

If a Narratives record may appear in two branches of a narratives hierarchy, the child narratives may not be shown for both branches of the hierarchy.


The child Narratives records are now displayed regardless of how may branches the parent narrative appears in.

The field prompts on the Permits query tab in the Rights module may not display correctly. The prompts are set to display using a right-to-left orientation, rather than the standard left-to-right setting.


The prompts have been changed to use a left-to-right orientation by default.

Data in reference fields, that is fields displaying data from another module, may not contain the correct values after certain operations are performed. The affected operations are:

  • Discard Record
  • Replace (Global Edit)
  • Export Records
  • Merge Record
  • Sort
  • Delete Record

Data in reference fields now displays the correct values after the listed operations are performed.

The value in a read-only combo-box may be cleared using the backspace key the first time data is viewed. The backspace key will not clear the value when viewing subsequent records.


The backspace key is disabled when a combo-box is read-only, regardless of when the data is viewed.

Duplicate attached records may be created when using the Import facility to create attached Collection Events or Sites records where the data contains lat/long values. The issue is caused by the failure of the lat/long conversion code when importing records.


The correct lat/long conversion now occurs, removing the creation of duplicate Collection Events or Sites records with the same data.

Random Access Violation messages may display indicating an error has occurred in mshtml.dll. The error message may even appear when a user is not at their machine.


The random error message is no longer displayed.

When performing a spell check on a RichEdit control that has multiple lines of text, the highlighting of the words spelt incorrectly may be out by a few characters.


Words spelt incorrectly are now highlighted correctly.

The View Attachments button next to a read-only grid may not be enabled when a single row is displayed in the gird. The button is only disabled for grids displaying data from another module (a reverse reference column).


The View Attachment button is now enabled when a single value is in a read-only grid.

The default value for the Gender field in the Parties module is set to Female. Ideally the default values should be Unknown.


The default value for the Gender field is now Unknown.

When changing the colours for various attributes (e.g. mandatory fields, etc.) via the Options dialogue box, the new colours selected will not take effect in modules already open. New instances will display the correct colours.


Existing modules now update their colours correctly when the Options dialogue box is closed.

When switching to the Details view of a record on a tab that contains an HTML control, the input focus is set to the HTML control, rather than the first control on tab.


The input focus is set to the first control on a tab when switching from Details view, even if the tab contains an HTML control.

A List of Values failure: fail to get values message may be displayed when generating a Crystal Report that contains dynamic parameters.


The error message is no longer displayed for Crystal Reports containing dynamic parameters.

The Audit Trail facility does not flush logging information when the processing of a record has been completed. The lack of flushing means the log file contents may lag behind the processing of records.


The Audit Trail facility now flushes logging information after each records processed.

If a taxonomic name appears in the Names History tab of other records it is difficult, if not impossible, to delete the name. Since the original name points to the preferred name, and the preferred name contains a history of previous names, a loop is formed. When a record is deleted it is not allowed to be referenced by any other record. A loop makes it impossible to delete either record, as it is referenced by the other record.


When deleting a taxonomic name, the Names History tab is now checked to ensure the original record is not referenced. This allows the record to be deleted.

The Taxonomy module has NULL indexing enabled on many of its fields. Unfortunately, this imposes a very large indexing overhead and as the indexing is enabled in the base module it cannot be disabled via the Registry.


All NULL indexing has been disabled in the Taxonomy module. System Administrators may enable it on selected fields via the EMu Registry. The indexing overhead for the Taxonomy module has been reduced dramatically.

The Taxonomy module does not generate the correct scientific name for autonyms.


The author is now inserted at the appropriate place in the sequence in the scientific name for autonyms.

The auto filling of values for the upper levels of hierarchies may be slow where the controls that form the hierarchy appear on a number of tabs.


The speed of auto filling of values in hierarchies has been improved dramatically.

Upgrade Notes

See Upgrade 4.0.02 to 4.0.03 for details.