From 5ff161c260bc7cf41d6574ae97072a332c2ddb44 Mon Sep 17 00:00:00 2001 From: Philipp Zumstein Date: Sat, 30 Apr 2016 18:00:45 +0200 Subject: [PATCH] Fix field 773 in MARC21 translator This closes #22, i.e. * save the description in subfield 773 $g instead of subfield 773 $h * save the description in SICI format in subfield 773 $q --- MARC21XML.js | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/MARC21XML.js b/MARC21XML.js index 1f710d6..a0f2916 100644 --- a/MARC21XML.js +++ b/MARC21XML.js @@ -364,11 +364,22 @@ function doExport() { mapProperty(currentFieldNode, "subfield", {"code" : "7"} , subfieldCode ); mapProperty(currentFieldNode, "subfield", {"code" : "t"} , item.publicationTitle ); var descriptionArray = []; - if (item.volume) descriptionArray.push(item.volume); - if (item.issue) descriptionArray.push(item.issue); - if (item.pages) descriptionArray.push(item.pages); - mapProperty(currentFieldNode, "subfield", {"code" : "h"} , descriptionArray.join(', ') ); + var siciDescription = ""; //https://en.wikipedia.org/wiki/Serial_Item_and_Contribution_Identifier + if (item.volume) { + descriptionArray.push(item.volume); + siciDescription += item.volume; + } + if (item.issue) { + descriptionArray.push(item.issue); + siciDescription += ":" + item.issue; + } + if (item.pages) { + descriptionArray.push(item.pages); + siciDescription += "<" + parseInt(item.pages); + } + mapProperty(currentFieldNode, "subfield", {"code" : "g"} , descriptionArray.join(', ') ); mapProperty(currentFieldNode, "subfield", {"code" : "p"} , item.journalAbbreviation ); + mapProperty(currentFieldNode, "subfield", {"code" : "q"} , siciDescription ); mapProperty(currentFieldNode, "subfield", {"code" : "x"} , item.ISSN ); //maybe move some other fields if journalArticle? }