E-Matrix Home

Functionality

Technology

Presentations

People

Contact

E-Matrix at the NCSU Libraries

The technology behind E-Matrix

Architecture

The E-Matrix application architecture is split into 3 modules: service, interface, and synchronizer. The service includes the data model and all of the code to access and manipulate E-Matrix data. The interface is the platform through which end-users interact with E-Matrix data via the web. The synchronizer consists of generic data synchronization code, along with vendor-specific transformers/filters to format the data correctly.

Service

The E-Matrix data model is the core of the product. Its abstract entities and relationships are derived from the DLF Electronic Resource Management Initiative. The model has been greatly extended and customized beyond the general specifications of the initiative. Some of the main entities in the model include the following:

  • Resource: the base entity to represent any type of resource

  • Work: an extension of resource that represents an abstract work (e.g., a journal or newspaper)

  • Collection: an extension of resource the represents a collection of works and/or information (e.g., a database, journal package, or aggregator)

  • Manifestation: the combination of a work and a collection that represents a specific instance of a resource (e.g., Chemical Reviews provided by the package American Chemical Society Journals)

  • License: the representation of a physical license associated with a group of collections and works

  • Organization: the representation of a publisher, vendor, licensee, licensor or provider

  • Subject: the representation of a custom subject that can be associated with works/collections

  • Holding: the representation of a print or electronic holding for a specific manifestation

In total, 42 entities make up the E-Matrix model. A number of data access objects and services sit on top of the data model to provide the ability to manipulate these entities.

Interface

The E-Matrix web interface allows users to manage the data maintained in the service. Each section of the interface is organized by the main entities mentioned above. Access to each part of the interface is controlled by basic authentication/authorization techniques, including password protection and role-based permissions. The navigation is hierarchical and geared toward browsing and searching for entities.

Synchronizer

The synchronizer consists of multiple synchronizers, filters, and transformers that load and maintain data in E-Matrix. The data comes from several sources, including a link resolver, an ILS, flat files, and databases. The synchronizers are generic and only load data into E-Matrix. The filters and transformers are responsible for parsing, cleaning, and formatting the vendor-specific data so the synchronizers can understand it. Each time a synchronizer runs, it compares the data in E-Matrix to the external data being loaded and inserts, updates, and/or deletes that external data accordingly. Currently, synchronizer runs once daily.

Application architecture and data flow

E-Matrix application architecture and data flow

E-Matrix as an open source project

NCSU Libraries currently hopes to provide a future release of E-Matrix as an open source project. In preparation for this goal, we are working to make the library community aware of its capabilities as an e-resource and serials management system and to gauge the level of interest in taking advantage of such a tool. To facilitate the discussion and respond to community interest, we have developed a documentation package that describes the current functionality and data model of E-Matrix. Please note that we are continually working on application changes and enhancements that could impact the data model. This package includes the following documentation for version 2.5.0 (current as of January 2011) of the E-Matrix project:

  • ERD with data source key
  • SQL to recreate database schema for E-Matrix and populate with default properties
  • E-Matrix overview document and architecture diagram
  • E-Matrix high level list of data elements
You are welcome to use this information as you wish in assessing the suitability of E-Matrix as a possible option for e-resource management in your own environment.

Documentation Package - version 2.5.0, 1MB, .zip file