MARC to Instance Mapping update

Task Description:

The MARC to Instance mapping dictates how fields in the MARC record are mapped to the FOLIO instance display. The standard community mapping is updated on a irregular basis. When there is an update, the Five Colleges MARC to Instance map must be updated to keep in sync with the community.

Because the Five Colleges uses a custom Mapping -The 998 to previous Aleph Identifier - the upgrade process requires additional steps. Besides the 998 mapping, the Five Colleges at the time of writing this, uses the default community mapping. Usually, but not always, this will be noted in post-upgrade release notes, so it is important to check with MM sig representatives if there is no listed updates.

 

Steps:

note:

  • These steps assume the user is using Postman API testing tool. Any program or script capable of performing “GET” requests and “PUT” requests will work. You will need to obtain a token. Do not use paste your admin password as plain text into file or postman. Instead, imbue a user with the invisible permission:

    • Mapping metadata provider - get mapping metadata

    • Mapping Rules provider - get default rules by tenant id

    • Mapping Rules provider - restore default rules by tenant id

    • Mapping Rules provider - update default rules by tenant id

  • From the time you initiate the restore to the time you update with the most recent mapping rules, any regenerated instance record will lose it’s “Previous Aleph Identifier” field. Ensure no one is doing SRS work.

  1. Send a “GET” request to “/mapping-rules/marc-bib”. This will retrieve the current mappings. Download and save the current mappings.

  2. Send a “PUT” request to “/mapping-rules/marc-bib/restore” . This will restore the most recent default mapping rules included as part of the release.

  3. send a “GET” Request to “/mapping-rules/marc-bib” and save to get the updated mapping file

  4. Copy the 998 key-value pair (it consists of a key of “998”, and a value that is an array of objects) from the previous mapping. The mapping is included below.

    "998": [ { "entity": [ { "rules": [ { "conditions": [ { "type": "set_identifier_type_id_by_name", "parameter": { "name": "Previous Aleph Identifier" } } ] } ], "target": "identifiers.identifierTypeId", "subfield": [ "b" ], "description": "Type for Previous Aleph Identifier" }, { "rules": [ { "conditions": [ { "type": "trim" } ] } ], "target": "identifiers.value", "subfield": [ "b" ], "description": "Previous Aleph Identifier" } ], "entityPerRepeatedSubfield": true } ]
  5. Paste the 998 key-value pair in the end of the updated mapping

  6. Validate the updated mapping with a JSON linter by pasting the updated mapping

  7. Prepare a “PUT” to “/mapping-rules/marc-bib” by pasting the updated, validated MARC to Instance Mapping in the body of the request. NOTE: There is no validation with this PUT request. It will accept anything.

  8. Send the “PUT” request

  9. Validate the change was successful by opening a source record that includes a 998. Make an innocuous change to the SRS record to allow “Save and Close” to work. If the update was successful, the record will save and the 998 field will be present and the “Previous Aleph Identifier” in the Identifier list.