Interaction with the Library Management System

In order to function, IMMS needs to be in close communication with a Library Management System (hereafter referred to as the LMS). The LMS supplies the basic information about items, etc., that the IMMS’ functions are build on top of.

Communication between the two systems can be divided into the following 3 parts:

These types of communication are described in the following sections.

Initial data

During start-up of IMMS, the LMS generates a dataset referred to as initial data, which IMMS transfers and loads. This provides IMMS with all of the information it needs from the LMS.

The initial data includes the following components:

Note that reservations (holds without any eligible items) can also be transmitted to IMMS.

The initial data is a snapshot from the LMS that brings IMMS up to date with the LMS. In order for the two systems to continue to be synchronized, all relevant changes in one system are transferred to the other system. This occurs bidirectionally between the systems via the exchange of notifications.


A notification is a message about an event - typically, that a modification to some data has taken place.
In order for IMMS and LMS to continuously work with the same data basis, any modification to data in the one system is sent to the other system if the data is important to the other system.
For example, the LMS sends a notification to IMMS when an item has been checked out so that IMMS can also register the item as on loan. Likewise, IMMS sends a notification to the LMS when an item fulfills a hold in connection with picking.

It is crucially important that all of these notifications arrive at the recipient, but at the same time, the systems must be able to continue to function independently in the event of a temporary disruption in the connection between the two systems. Therefore, both systems are able to save outgoing notifications in a queue so that they can be sent at a later time once the connection has been reestablished.

The LMS notifies IMMS about the following:

IMMS notifies the LMS about the following:

Via an item update notification, the LMS is notified about an item’s specific location in IMMS, e.g. with an indication of the name of the item grouping or name and location of the transport unit the item is in. In addition, the LMS becomes aware of the item’s status (from the transport unit) and whether the item is considered to be available or unavailable.

Available or not

As part of the information about an item's placement in IMMS notifications specify whether the item is available or not. This is determined by the item's placement based on these rules:


If one of the systems wants an answer from the other system about something, it can send a query. Only one particular type of query has been defined, specifically an assignment query that is sent from the LMS to IMMS.

When an item has been returned in the LMS and the LMS determines that the item should be shelved, it can query IMMS regarding the branch where the item should be shelved. IMMS then uses its intelligent distribution algorithm to figure out an appropriate branch for the item. This can be a media hotel if needed.

In contrast to the other types of communication, queries are always made directly and may never be put into a queue.