Dynamically generate MARC records by mapping instances
Description
Environment
Potential Workaround
blocks
defines
Checklist
hideTestRail: Results
Activity

Mike Taylor July 27, 2020 at 6:16 PM
On , Magda Zacharska points out:
In scope of we created a shared library https://github.com/folio-org/generate-marc-utils
That is unfortunate, as was a project to generate a MARC bibliographic record from an Inventory Instance record. At one point, we thought that facility might become available as a web-service which the Z39.50 server could use directly, but that isn't going to happen. However, the issue description says:
The generated record will be base on the mapping provided by Metadata Management SIG: Instance to MARC 2019 tab in https://docs.google.com/spreadsheets/d/11lGBiPoetHuC3u-onVVLN4Mj5KtVHqJaQe4RqCxgGzo/edit#gid=1166940623
The project generated a machine-readable representation of those mapping rules, which the software executes to generate the record: https://github.com/folio-org/mod-data-export/blob/master/src/main/resources/rules/rulesDefault.json
I may be able to re-use that ruleset and write a new engine to interpret it. One approach to doing this would be to mechanically translate that ruleset into an XSLT stylesheet and run that.
Details
Assignee
Mike TaylorMike TaylorReporter
Mike TaylorMike TaylorPriority
P5TestRail: Cases
Open TestRail: CasesTestRail: Runs
Open TestRail: Runs
Details
Details
Assignee

Reporter

We will eventually (though not for the MVP) want the Z39.50 server to have the option of generating MARC records on the fly, as opposed to fetching them from SRS. To do this, we will need to take the information in FOLIO inventory instances (and possibly their associated holdings and items), and map it into MARCXML, which the YAZ frontend will then convert into an ISO 2709 record.
One approach to this would be to create and maintain an XSLT stylesheet that maps from an XML representation of FOLIO's JSON records into MARCXML. ZF-8 is about such a stylesheet.
Another approach would be to reuse some part of the inventory-to-MARC mapping work that was done for .