MODSOURMAN-873 - Getting issue details... STATUS

Update to the default MARC Bib-to-Inventory Instance MAP:

  • Map MARC 720 field to instance contributor

Mandatory or Optional: Optional

Steps:

  1. If library tenant is using default mapping rules with NO changes (no customizations), then call PUT  /mapping-rules/marc-bib/restore
  2. If library tenant is using default mapping rules, WITH changes (local customization), then follow the next steps:
    • Send a GET request to /mapping-rules/marc-bib to retrieve the mapping rules
    • Add field 720 to mapping rules: 

      "720": [
          {
            "indicators": {
              "ind1": "1",
              "ind2": "*"
            },
            "entity": [
              {
                "target": "contributors.contributorNameTypeId",
                "description": "Type for Personal Name",
                "applyRulesOnConcatenatedData": true,
                "subfield": [],
                "rules": [
                  {
                    "conditions": [
                      {
                        "type": "set_contributor_name_type_id",
                        "parameter": {
                          "name": "Personal name"
                        }
                      }
                    ]
                  }
                ]
              },
              {
                "target": "contributors.contributorTypeId",
                "description": "Type of contributor",
                "applyRulesOnConcatenatedData": true,
                "subfield": [
                  "4",
                  "e"
                ],
                "rules": [
                  {
                    "conditions": [
                      {
                        "type": "set_contributor_type_id_by_code_or_name",
                        "parameter": {
                          "contributorCodeSubfield": "4",
                          "contributorNameSubfield": "e"
                        }
                      }
                    ]
                  }
                ],
                "alternativeMapping": {
                  "target": "contributors.contributorTypeText",
                  "description": "Contributor type free text",
                  "ignoreSubsequentSubfields": true,
                  "subfield": [
                    "e"
                  ]
                }
              },
              {
                "target": "contributors.primary",
                "description": "Primary contributor",
                "applyRulesOnConcatenatedData": true,
                "subfield": [
                ],
                "rules": [
                  {
                    "conditions": [],
                    "value": "false"
                  }
                ]
              },
              {
                "target": "contributors.name",
                "description": "Personal Name",
                "applyRulesOnConcatenatedData": true,
                "subfield": [
                  "a"
                ],
                "rules": [
                  {
                    "conditions": [
                      {
                        "type": "trim_period, trim"
                      }
                    ]
                  }
                ]
              }
            ]
          },
          {
            "indicators": {
              "ind1": " ",
              "ind2": "*"
            },
            "entity": [
              {
                "target": "contributors.contributorNameTypeId",
                "description": "Type for Personal Name",
                "applyRulesOnConcatenatedData": true,
                "subfield": [],
                "rules": [
                  {
                    "conditions": [
                      {
                        "type": "set_contributor_name_type_id",
                        "parameter": {
                          "name": "Personal name"
                        }
                      }
                    ]
                  }
                ]
              },
              {
                "target": "contributors.contributorTypeId",
                "description": "Type of contributor",
                "applyRulesOnConcatenatedData": true,
                "subfield": [
                  "4",
                  "e"
                ],
                "rules": [
                  {
                    "conditions": [
                      {
                        "type": "set_contributor_type_id_by_code_or_name",
                        "parameter": {
                          "contributorCodeSubfield": "4",
                          "contributorNameSubfield": "e"
                        }
                      }
                    ]
                  }
                ],
                "alternativeMapping": {
                  "target": "contributors.contributorTypeText",
                  "description": "Contributor type free text",
                  "ignoreSubsequentSubfields": true,
                  "subfield": [
                    "e"
                  ]
                }
              },
              {
                "target": "contributors.primary",
                "description": "Primary contributor",
                "applyRulesOnConcatenatedData": true,
                "subfield": [
                ],
                "rules": [
                  {
                    "conditions": [],
                    "value": "false"
                  }
                ]
              },
              {
                "target": "contributors.name",
                "description": "Personal Name",
                "applyRulesOnConcatenatedData": true,
                "subfield": [
                  "a"
                ],
                "rules": [
                  {
                    "conditions": [
                      {
                        "type": "trim_period, trim"
                      }
                    ]
                  }
                ]
              }
            ]
          },
          {
            "indicators": {
              "ind1": "2",
              "ind2": "*"
            },
            "entity": [
              {
                "target": "contributors.contributorNameTypeId",
                "description": "Type for Corporate Name",
                "applyRulesOnConcatenatedData": true,
                "subfield": [],
                "rules": [
                  {
                    "conditions": [
                      {
                        "type": "set_contributor_name_type_id",
                        "parameter": {
                          "name": "Corporate name"
                        }
                      }
                    ]
                  }
                ]
              },
              {
                "target": "contributors.contributorTypeId",
                "description": "Type of contributor",
                "applyRulesOnConcatenatedData": true,
                "subfield": [
                  "4",
                  "e"
                ],
                "rules": [
                  {
                    "conditions": [
                      {
                        "type": "set_contributor_type_id_by_code_or_name",
                        "parameter": {
                          "contributorCodeSubfield": "4",
                          "contributorNameSubfield": "e"
                        }
                      }
                    ]
                  }
                ],
                "alternativeMapping": {
                  "target": "contributors.contributorTypeText",
                  "description": "Contributor type free text",
                  "ignoreSubsequentSubfields": true,
                  "subfield": [
                    "e"
                  ]
                }
              },
              {
                "target": "contributors.primary",
                "description": "Primary contributor",
                "applyRulesOnConcatenatedData": true,
                "subfield": [
                ],
                "rules": [
                  {
                    "conditions": [],
                    "value": "false"
                  }
                ]
              },
              {
                "target": "contributors.name",
                "description": "Personal Name",
                "applyRulesOnConcatenatedData": true,
                "subfield": [
                  "a"
                ],
                "rules": [
                  {
                    "conditions": [
                      {
                        "type": "trim_period, trim"
                      }
                    ]
                  }
                ]
              }
            ]
          }
        ]
    • Send PUT request to /mapping-rules/marc-bib and put in the body the updated JSON
  • No labels

3 Comments

  1. Kateryna Senchenko : Thank you for updating the documentation with steps. Assuming the library is not using default mapping rules, can we get a script to make the adjustments above?

  2. Hi Sobha Duvvuri, if library uses the default rules, then point 1 is all is needed. If customizations were made, then steps in point 2 should be executed. Unfortunately, we cannot automate this process since every client can have different customizations, please refer to Notes on Customizing Default MARC-Inventory Maps and Release Updates

  3. Meeting Summary: This is at the discretion of the library. If the library has default mapping rules - just restore. If the library already custom mapping rules and has 720 rule, replace the existing 720 rule with this rule. If the library has custom mapping rules and does not have 720 rule, add this 720 rule to libraries that want this. Please note that changing the mapping rules will not refresh the existing instances. A map will have only one 720 field and the 720 field can be added anywhere in the map.