The Challenge
What Library Machine Was Facing
Library Machine was modernising its digital library platform, which required migrating a decade of catalogue data from a legacy ILS (Integrated Library System) while simultaneously connecting new digital lending and discovery services that used entirely different data standards. The legacy system used MARC 21 records while the new platforms required Dublin Core and JSON-LD. Patron accounts, loan histories, and reservation queues all needed to migrate without disruption to active borrowers. The migration window was constrained to a single weekend.
The Solution
What We Built
We built a bidirectional transformation engine that converted MARC 21 records to both Dublin Core and JSON-LD formats, with validation against the target schemas and exception handling for records with missing or malformed fields. A data migration pipeline was designed to run in four phases across the weekend window: catalogue records, patron accounts, active loans, and reservation queues — with a rollback checkpoint between each phase. Integration adapters connected the new platform to two digital lending APIs (OverDrive and Libby) and a discovery layer, with a sync service maintaining consistency as borrowing activity continued during migration.

Results
