E-Matrix at the NC State University Libraries

E-Matrix is the locally developed serial and electronic resource management system in use at the NC State University Libraries. This tool acknowledges that the issues associated with electronic resources mirror those that face our serial collection as a whole, regardless of format. E-Matrix therefore supports the effective management of the Libraries' serial collection by managing print and electronic journals and databases.


To best address the challenges of serials management, E-Matrix provides functionality in the following areas:

Licensing: The E-Matrix licensing module acts as a centralized repository for all of the Libraries’ electronic resource license agreements. The module uses a mapping process to break each license down to its most important components, providing a staff view that is easier to read and interpret than the license agreement alone. Each mapped license highlights those areas that are most important to librarians, such as permitted uses and restrictions. Additionally, each license within E-Matrix contains a link to a PDF copy of the original document. The resulting repository serves as a more effective alternative to a traditional paper file.

Access: E-Matrix drives some of the Libraries’ most important public access tools. It populates the A to Z journal list, seamlessly integrating holdings data from the Libraries’ catalog and link resolver into a single, easy-to-use format and allowing print and electronic holdings to be displayed side by side. E-Matrix also adds unique functionality to the Libraries’ subject web pages. Staff members can create user-friendly subject classifications based on NC State University’s departments and degree programs and map them to specific resources. They can also create tailored resource descriptions of individual titles and vary them according to the intended audience.

Collection evaluation: The data and statistics stored in E-Matrix enhance the Libraries' evaluative capabilities. E-Matrix holds local data, such as prices, usage statistics, and internal usage codes, and centralizes external measurements, such as impact factors and LJUR data. Any of these data sets can be combined, allowing for advanced analysis on the basis of use, scholarly impact, price, and more. By facilitating the unification and manipulation of diverse evaluative data, E-Matrix allows librarians to examine the Libraries’ holdings on any level – from a single title to the collection as a whole.

Reporting: E-Matrix uses evaluative data, as well as detailed organizational roles, to fuel a powerful reporting system. By manipulating data sets found in the collection evaluation module, librarians can produce many important reports, including analyses of cost per use and cost per citation or publication. The creation of organizational roles within E-Matrix further enhances its reporting capabilities. Each organization associated with a resource is assigned one or more roles, including vendor, publisher, provider, and licensor. Any report produced by E-Matrix can be narrowed by organization and role for greater customization.

Name authority: To be truly useful, the organization names in E-Matrix require standardization. Because the data in E-Matrix has been imported from many sources, organization names in their raw form often include variations, errors, and changes that have not yet been addressed in the system of origin. E-Matrix meets the need for normalization through the inclusion of a unique tool that allows staff members to locally assign authoritative organization names. The name authority is the backbone of an effective reporting system, as it ensures that report specifications are correctly applied to all resources with E-Matrix.

The E-Matrix Committee continues work on enhancements to the product, with an emphasis on the development of a workflow queue and the addition of more sophisticated features to the evaluative and reporting modules.

How We Did It


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.


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.


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.


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.



Past Contributors

Kristin Antelman
Josh Boyer
Jason Casden
Karen Ciccone
Stephen Cole
Jason Crocker
Hilary Davis
Annette Day
David Goldsmith
Rob Hafner
James Jackson Sanborn
Jan Kemp
Karen Letarte
Sandy Logeson
Emily Lynema
Steve Meyer
Tim Mori
Darby Orcutt
Andrew Pace
Charley Pennell
Greg Raschke
Rob Rucker
Lisa Ruth
Jacquie Samples
Erin Stalberg
Will Wheeler
Alicia Wyatt
Maurice York