Publish LHR to OCLC - alternative, with Normalization Rules
- Product: Alma
Question
We had chosen the general profile "Publish your Local Holdings Records (LHRs) to OCLC" and have the FTP set up correctly. However, the OCLC system does not recognize the files published as valid because they contain invalid leader values. The number or pound sign (#) cannot be used to represent a 'blank space'.
We have a Normalization Rule that was shared by another library, and which I used successfully for a publishing profile I created for our Reclamation project. We'd like to be able to just add that to the LHR data sync publishing profile. Is it possible?
Answer
The library's successful solution was this - they created a set, ran a Normalization Rule on the records, and then relied on: “Publish local holdings records to OCLC”.
The following is what worked for this library - a rule to replace blanks, and a rule to replace dashes. Thank you so much!
1) Replace Blanks
rule "Fix 007 - replace hashtag with blank"
when
true
then
replaceControlContents "007.{2,1}.#" with " "
end
rule "Fix 006 - replace hashtag with blank"
when
true
then
replaceControlContents "006.{1,1}.#" with " "
replaceControlContents "006.{2,1}.#" with " "
replaceControlContents "006.{3,1}.#" with " "
replaceControlContents "006.{4,1}.#" with " "
replaceControlContents "006.{5,1}.#" with " "
replaceControlContents "006.{7,1}.#" with " "
replaceControlContents "006.{8,1}.#" with " "
replaceControlContents "006.{10,1}.#" with " "
replaceControlContents "006.{11,1}.#" with " "
replaceControlContents "006.{12,1}.#" with " "
replaceControlContents "006.{13,1}.#" with " "
replaceControlContents "006.{14,1}.#" with " "
replaceControlContents "006.{15,1}.#" with " "
replaceControlContents "006.{16,1}.#" with " "
replaceControlContents "006.{17,1}.#" with " "
end
rule "Fix 008 - replace hashtag with blank"
when
true
then
replaceControlContents "008.{0,1}.#" with " "
replaceControlContents "008.{1,1}.#" with " "
replaceControlContents "008.{2,1}.#" with " "
replaceControlContents "008.{3,1}.#" with " "
replaceControlContents "008.{4,1}.#" with " "
replaceControlContents "008.{5,1}.#" with " "
replaceControlContents "008.{7,1}.#" with " "
replaceControlContents "008.{8,1}.#" with " "
replaceControlContents "008.{9,1}.#" with " "
replaceControlContents "008.{10,1}.#" with " "
replaceControlContents "008.{11,1}.#" with " "
replaceControlContents "008.{12,1}.#" with " "
replaceControlContents "008.{13,1}.#" with " "
replaceControlContents "008.{14,1}.#" with " "
replaceControlContents "008.{15,1}.#" with " "
replaceControlContents "008.{16,1}.#" with " "
replaceControlContents "008.{19,1}.#" with " "
replaceControlContents "008.{20,1}.#" with " "
replaceControlContents "008.{21,1}.#" with " "
replaceControlContents "008.{22,1}.#" with " "
replaceControlContents "008.{23,1}.#" with " "
replaceControlContents "008.{24,1}.#" with " "
replaceControlContents "008.{25,1}.#" with " "
replaceControlContents "008.{26,1}.#" with " "
replaceControlContents "008.{27,1}.#" with " "
replaceControlContents "008.{28,1}.#" with " "
replaceControlContents "008.{29,1}.#" with " "
replaceControlContents "008.{30,1}.#" with " "
replaceControlContents "008.{31,1}.#" with " "
replaceControlContents "008.{32,1}.#" with " "
replaceControlContents "008.{33,1}.#" with " "
replaceControlContents "008.{34,1}.#" with " "
replaceControlContents "008.{35,1}.#" with " "
replaceControlContents "008.{36,1}.#" with " "
replaceControlContents "008.{37,1}.#" with " "
replaceControlContents "008.{38,1}.#" with " "
replaceControlContents "008.{39,1}.#" with " "
end
rule "fix LDR - replace hashtag with blank"
when
true
then
replaceControlContents "LDR.{0,1}.#" with " "
replaceControlContents "LDR.{1,1}.#" with " "
replaceControlContents "LDR.{2,1}.#" with " "
replaceControlContents "LDR.{3,1}.#" with " "
replaceControlContents "LDR.{4,1}.#" with " "
replaceControlContents "LDR.{5,1}.#" with " "
replaceControlContents "LDR.{7,1}.#" with " "
replaceControlContents "LDR.{8,1}.#" with " "
replaceControlContents "LDR.{9,1}.#" with " "
replaceControlContents "LDR.{17,1}.#" with " "
replaceControlContents "LDR.{19,1}.#" with " "
replaceControlContents "LDR.{20,1}.#" with " "
replaceControlContents "LDR.{21,1}.#" with " "
replaceControlContents "LDR.{22,1}.#" with " "
replaceControlContents "LDR.{23,1}.#" with " "
end
2) Remove dashes
rule "Fix 007 - replace hyphen with blank"
when
true
then
replaceControlContents "007.{2,1}.-" with " "
end
rule "Fix 006 - replace hyphen with blank"
when
true
then
replaceControlContents "006.{1,1}.-" with " "
replaceControlContents "006.{2,1}.-" with " "
replaceControlContents "006.{3,1}.-" with " "
replaceControlContents "006.{4,1}.-" with " "
replaceControlContents "006.{5,1}.-" with " "
replaceControlContents "006.{7,1}.-" with " "
replaceControlContents "006.{8,1}.-" with " "
replaceControlContents "006.{10,1}.-" with " "
replaceControlContents "006.{11,1}.-" with " "
replaceControlContents "006.{12,1}.-" with " "
replaceControlContents "006.{13,1}.-" with " "
replaceControlContents "006.{14,1}.-" with " "
replaceControlContents "006.{15,1}.-" with " "
replaceControlContents "006.{16,1}.-" with " "
replaceControlContents "006.{17,1}.-" with " "
end
rule "Fix 008 - replace hyphen with blank"
when
true
then
replaceControlContents "008.{0,1}.-" with " "
replaceControlContents "008.{1,1}.-" with " "
replaceControlContents "008.{2,1}.-" with " "
replaceControlContents "008.{3,1}.-" with " "
replaceControlContents "008.{4,1}.-" with " "
replaceControlContents "008.{5,1}.-" with " "
replaceControlContents "008.{7,1}.-" with " "
replaceControlContents "008.{8,1}.-" with " "
replaceControlContents "008.{9,1}.-" with " "
replaceControlContents "008.{10,1}.-" with " "
replaceControlContents "008.{11,1}.-" with " "
replaceControlContents "008.{12,1}.-" with " "
replaceControlContents "008.{13,1}.-" with " "
replaceControlContents "008.{14,1}.-" with " "
replaceControlContents "008.{15,1}.-" with " "
replaceControlContents "008.{16,1}.-" with " "
replaceControlContents "008.{19,1}.-" with " "
replaceControlContents "008.{20,1}.-" with " "
replaceControlContents "008.{21,1}.-" with " "
replaceControlContents "008.{22,1}.-" with " "
replaceControlContents "008.{23,1}.-" with " "
replaceControlContents "008.{24,1}.-" with " "
replaceControlContents "008.{25,1}.-" with " "
replaceControlContents "008.{26,1}.-" with " "
replaceControlContents "008.{27,1}.-" with " "
replaceControlContents "008.{28,1}.-" with " "
replaceControlContents "008.{29,1}.-" with " "
replaceControlContents "008.{30,1}.-" with " "
replaceControlContents "008.{31,1}.-" with " "
replaceControlContents "008.{32,1}.-" with " "
replaceControlContents "008.{33,1}.-" with " "
replaceControlContents "008.{34,1}.-" with " "
replaceControlContents "008.{35,1}.-" with " "
replaceControlContents "008.{36,1}.-" with " "
replaceControlContents "008.{37,1}.-" with " "
replaceControlContents "008.{38,1}.-" with " "
replaceControlContents "008.{39,1}.-" with " "
end
rule "fix LDR - replace hyphen with blank"
when
true
then
replaceControlContents "LDR.{0,1}.-" with " "
replaceControlContents "LDR.{1,1}.-" with " "
replaceControlContents "LDR.{2,1}.-" with " "
replaceControlContents "LDR.{3,1}.-" with " "
replaceControlContents "LDR.{4,1}.-" with " "
replaceControlContents "LDR.{5,1}.-" with " "
replaceControlContents "LDR.{7,1}.-" with " "
replaceControlContents "LDR.{8,1}.-" with " "
replaceControlContents "LDR.{9,1}.-" with " "
replaceControlContents "LDR.{17,1}.-" with " "
replaceControlContents "LDR.{19,1}.-" with " "
replaceControlContents "LDR.{20,1}.-" with " "
replaceControlContents "LDR.{21,1}.-" with " "
replaceControlContents "LDR.{22,1}.-" with " "
replaceControlContents "LDR.{23,1}.-" with " "
end
Additional Information
Click here for more about "Publishing to OCLC"
And here for a trove of articles regarding Normalization Rules, How to run on Holding records, and more.
- Article last edited: 15-AUG-2022