Normalization Rules can be used withing MDE only until they are turned into a Process. To do this, the Rule must be in the Shared folder.
- Open Configuration
- Select Resources > Metadata Configuration
- Under Active Profiles:
- Select MARC21 Bibliographic for Processes that change BIB records
- Select MARC21 Holding for Processes that change HOLDING records
- Select Normalization Processes Tab
- Select Add Process
- General Information
- Add a Name and Description for the new process
- Set Status to Active
- Add Tasks
- Add Tasks
- Select MarcDroolNormalization
- Add and Close
- Repeat for as many Norm rules you need to add to a process.
- Task Parameters
- Select your Norm rule for each task

- General Information
- Make sure the process is set to active
- The process should now be available to use for jobs and import profiles.
LOADERS
Adam Matthew Digital
Loader - amdigital
Click to see Code
rule "Add 910"
rule "Remove 710 for Kanopy"
when
(not exists "910.a.amdigital")
then
addField "910.a.amdigital"
end
when
(exists "710.a.Adam Matthew Digital (Firm)*")
then
removeField "710" if (exists "710.a.Adam Matthew Digital (Firm)*")
end
Alexander Street Press
Loader - asp
Click to see Code
rule "Add 910 - LAVA"
(exists "035.a.*LAVA")
when
then
addField "910.a.aspLAVA"
endrule "Add 910 - wasi"
when
(exists "035.a.*wasi")
then
addField "910.a.aspwasi"
endrule "Add 910 - cwld"
when
(exists "035.a.*cwld")
then
addField "910.a.aspcwld"
endrule "Add 910 - PBSV"
when
(exists "035.a.*PBSV")
then
addField "910.a.aspPBSV"
endrule "Add 910 - ATV2"
when
(exists "035.a.*ATV2")
then
addField "910.a.aspATV2"
endrule "Add 910 - asiv"
when
(exists "035.a.*asiv")
then
addField "910.a.aspasiv"
endrule "Add 910 - ediv"
when
(exists "035.a.*ediv")
then
addField "910.a.aspediv"
endrule "Add 910 - curv"
when
(exists "035.a.*curv")
then
addField "910.a.aspcurv"
endrule "Add 910 - ausv"
when
(exists "035.a.*ausv")
then
addField "910.a.aspausv"
endrule "Add 910 - wass"
when
(exists "035.a.*wass")
then
addField "910.a.aspwass"
endrule "Add 910 - VAST"
when
(exists "035.a.*VAST")
then
addField "910.a.aspVAST"
endrule "Add 910 - FLMS"
when
(exists "035.a.*FLMS")
then
addField "910.a.aspFLMS"
endrule "Add 910 - CLMV"
when
(exists "035.a.*CLMV")
then
addField "910.a.aspCLMV"
endrule "Add 910 - ctiv"
when
(exists "035.a.*ctiv")
then
addField "910.a.aspctiv"
endrule "Add 910 - ativ"
when
(exists "035.a.*ativ")
then
addField "910.a.aspativ"
endrule "Add 910 - daiv"
when
(exists "035.a.*daiv")
then
addField "910.a.aspdaiv"
endrule "Add 910 - MARC"
when
(exists "035.a.*MARC")
then
addField "910.a.aspMARC"
endrule "Add 910 - EBAP"
when
(exists "035.a.*EBAP")
then
addField "910.a.aspEBAP"
endrule "Add 910 - flon"
when
(exists "035.a.*flon")
then
addField "910.a.aspflon"
endrule "Add 910 - AVN2"
when
(exists "035.a.*AVN2")
then
addField "910.a.aspAVN2"
endrule "Add 910 - amso"
when
(exists "035.a.*amso")
then
addField "910.a.aspamso"
endrule "Add 910 - cmlv"
when
(exists "035.a.*cmlv")
then
addField "910.a.aspcmlv"
endrule "Add 910 - glnd"
when
(exists "035.a.*glnd")
then
addField "910.a.aspglnd"
endrule "Add 910 - nwld"
when
(exists "035.a.*nwld")
then
addField "910.a.aspnwld"
endrule "Add 910 - artv"
when
(exists "035.a.*artv")
then
addField "910.a.aspartv"
endrule "Add 910 - FLN4"
when
(exists "035.a.*FLN4")
then
addField "910.a.aspFLN4"
endrule "Add 910 - womu"
when
(exists "035.a.*womu")
then
addField "910.a.aspwomu"
endrule "Add 910 - nadr"
when
(exists "035.a.*nadr")
then
addField "910.a.aspnadr"
endrule "Add 910 - INDR"
when
(exists "035.a.*INDR")
then
addField "910.a.aspINDR"
endrule "Add 910 - avop"
when
(exists "035.a.*avop")
then
addField "910.a.aspavop"
endrule "Add 910 - glmu"
when
(exists "035.a.*glmu")
then
addField "910.a.aspglmu"
endrule "Add 910 - bldr"
when
(exists "035.a.*bldr")
then
addField "910.a.aspbldr"
endrule "Add 910 - VASC"
when
(exists "035.a.*VASC")
then
addField "910.a.aspVASC"
endrule "Add 910 - clmu"
when
(exists "035.a.*clmu")
then
addField "910.a.aspclmu"
endrule "Add 910 - opiv"
when
(exists "035.a.*opiv")
then
addField "910.a.aspopiv"
endrule "Add 910 - gltv"
when
(exists "035.a.*gltv")
then
addField "910.a.aspgltv"
endrule "Add 910 - anth"
when
(exists "035.a.*anth")
then
addField "910.a.aspanth"
endrule "Add 910 - tcr2"
when
(exists "035.a.*tcr2")
then
addField "910.a.asptcr2"
endrule "Add 910 - food"
when
(exists "035.a.*food")
then
addField "910.a.aspfood"
endrule "Add 910 - ant2"
when
(exists "035.a.*ant2")
then
addField "910.a.aspant2"
endrule "Add 910 - aadr"
when
(exists "035.a.*aadr")
then
addField "910.a.aspaadr"
endrule "Add 910 - lawv"
when
(exists "035.a.*lawv")
then
addField "910.a.asplawv"
endrule "Add 910 - ant3"
when
(exists "035.a.*ant3")
then
addField "910.a.aspant3"
endrule "Add 910 - cml"
when
(exists "035.a.*cml")
then
addField "910.a.aspcml"
endrule "Add 910 - silf"
when
(exists "035.a.*silf")
then
addField "910.a.aspsilf"
endrule "Add 910 - bld2"
when
(exists "035.a.*bld2")
then
addField "910.a.aspbld2"
endrule "Add 910 - JAZZ"
when
(exists "035.a.*JAZZ")
then
addField "910.a.aspJAZZ"
endrule "Add 910 - tiv"
when
(exists "035.a.*tiv")
then
addField "910.a.asptiv"
endrule "Add 910 - daiv2"
when
(exists "035.a.*daiv2")
then
addField "910.a.aspdaiv2"
end
HKUL
Loader - HKUL
Click to see Code
rule "Copy Call Number"
when
(not exists "090")
then
copyfield "050" to "090"
changeFirstIndicator "090" to ""
changeSecondIndicator "090" to ""
endrule "Oversize"
when
(exists "300.c.27*") or (exists "300.c.28*") or (exists "300.c.29*") or (exists "300.c.30*")
then
addsubfield "090.f.1-SIZE"
endrule "Oversize 2"
when
(exists "300.c.31*") or (exists "300.c.32*") or (exists "300.c.33*") or (exists "300.c.34*") or (exists "300.c.35*") or (exists "300.c.36*") or (exists "300.c.37*") or (exists "300.c.38*") or (exists "300.c.39*") or (exists "300.c.40*") or (exists "300.c.41*") or (exists "300.c.42*") or (exists "300.c.43*") or (exists "300.c.44*") or (exists "300.c.45*") or (exists "300.c.46*") or (exists "300.c.47*") or (exists "300.c.48*") or (exists "300.c.49*") or (exists "300.c.50*")
then
addsubfield "090.f.2-SIZE"
endrule "Add 910"
when
(not exists "910.a.HKUL")
then
addField "910.a.HKUL"
endrule "Change 976"
when
(not exists "976.l.chin")
then
addsubfield "976.l.chin" if (not exists "976.l.chin")
end
JSTOR Bought
Loader - JSTOR Bought
Click to see Code
rule "Add 910 field"
when
(not exists "910.a.JSTOR Bought")
then
addField "910.a.JSTOR Bought"
end
Kanopy
Loader - Kanopy
Click to see Code
rule "Remove Cover Image Field"
when
(exists "856.u.*external-image")
then
removeField "856" if (exists "856.u.*external-image")
endrule "Add 910"
when
(not exists "910.a.kanopy")
then
addField "910.a.kanopy"
endrule "Remove 710 for Kanopy"
when
(exists "710.a.Kanopy (Firm)*")
then
removeField "710" if (exists "710.a.Kanopy (Firm)*")
end
LEILA
Loader - LEILA Shelf Ready
Click to see Code
rule "Copy Call Number"
when
(not exists "090")
then
copyfield "050" to "090"
changeFirstIndicator "090" to ""
changeSecondIndicator "090" to ""
endrule "Oversize"
when
(exists "300.c.27*") or (exists "300.c.28*") or (exists "300.c.29*") or (exists "300.c.30*")
then
addsubfield "090.f.1-SIZE"
endrule "Oversize 2"
when
(exists "300.c.31*") or (exists "300.c.32*") or (exists "300.c.33*") or (exists "300.c.34*") or (exists "300.c.35*") or (exists "300.c.36*") or (exists "300.c.37*") or (exists "300.c.38*") or (exists "300.c.39*") or (exists "300.c.40*") or (exists "300.c.41*") or (exists "300.c.42*") or (exists "300.c.43*") or (exists "300.c.44*") or (exists "300.c.45*") or (exists "300.c.46*") or (exists "300.c.47*") or (exists "300.c.48*") or (exists "300.c.49*") or (exists "300.c.50*")
then
addsubfield "090.f.2-SIZE"
endrule "Add 910"
when
(not exists "910.a.LEILA")
then
addField "910.a.LEILA"
end
Oxford Scholarship Online
Loader - Oxford Scholarship Online
Click to see Code
rule "Add 910"
when
(not exists "910.a.oxford scholarship online")
then
addField "910.a.oxford scholarship online"
end
Swank
Loader - Swank
Click to see Code
rule "Add 910 field"
when
(not exists "910.a.swank")
then
addField "910.a.swank"
end
OTHER
RDA Helper
Click to see Code
rule "RDA Helper 336"
when
(not exists "336")
then
addField "336.a.text" if(exists "LDR.{6,1}.a")
addField "336.a.text" if(exists "LDR.{6,1}.t")
addField "336.a.cartographic" if(exists "LDR.{6,1}.e")
addField "336.a.cartographic" if(exists "LDR.{6,1}.f")
addField "336.a.computer dataset" if(exists "LDR.{6,1}.m")
addField "336.a.notated music" if(exists "LDR.{6,1}.c")
addField "336.a.notated music" if(exists "LDR.{6,1}.d")
addField "336.a.performed music" if(exists "LDR.{6,1}.j")
addField "336.a.sounds" if(exists "LDR.{6,1}.i")
addField "336.a.image" if(exists "LDR.{6,1}.k")
addField "336.a.three-dimensional form" if(exists "LDR.{6,1}.r")
addField "336.a.moving image" if(exists "LDR.{6,1}.g")
addField "336.a.other" if(exists "LDR.{6,1}.o")
addField "336.a.other" if(exists "LDR.{6,1}.p")
addSubField "336.2.rdacontent"
endrule "RDA Helper 337"
when
(not exists "337")
then
addField "337.a.audio" if(exists "007.{0,1}.s")
addSubField "337.b.s" if(exists "007.{0,1}.s")
addField "337.a.computer" if(exists "007.{0,1}.c")
addSubField "337.b.c" if(exists "007.{0,1}.c")
addField "337.a.microform" if(exists "007.{0,1}.h")
addSubField "337.b.h" if(exists "007.{0,1}.h")
addField "337.a.projected" if(exists "007.{0,1}.g")
addSubField "337.b.g" if(exists "007.{0,1}.g")
addField "337.a.projected" if(exists "007.{0,1}.m")
addSubField "337.b.g" if(exists "007.{0,1}.m")
addField "337.a.unmediated" if(exists "007.{0,1}.k")
addSubField "337.b.n" if(exists "007.{0,1}.k")
addField "337.a.unmediated" if(exists "007.{0,1}.t")
addSubField "337.b.n" if(exists "007.{0,1}.t")
addField "337.a.video" if(exists "007.{0,1}.v")
addSubField "337.b.v" if(exists "007.{0,1}.v")
addField "337.a.unspecified" if(exists "007.{0,1}.z")
addSubField "337.b.z" if(exists "007.{0,1}.z")
addSubField "337.2.rdamedia"
endrule "RDA Helper 338"
when
(not exists "338")
then
addField "338.a.computer card" if(exists "007.{0,2}.ck")
addSubField "337.b.ck" if(exists "007.{0,2}.ck")
addField "338.a.computer chip cartridge" if(exists "007.{0,2}.cb")
addSubField "337.b.cb" if(exists "007.{0,2}.cb")
addField "338.a.computer disc" if(exists "007.{0,2}.cd")
addSubField "337.b.cd" if(exists "007.{0,2}.cd")
addField "338.a.computer disc cartridge" if(exists "007.{0,2}.ce")
addSubField "337.b.ce" if(exists "007.{0,2}.ce")
addField "338.a.computer tape cartridge" if(exists "007.{0,2}.ca")
addSubField "337.b.ca" if(exists "007.{0,2}.ca")
addField "338.a.computer tape cassette" if(exists "007.{0,2}.cf")
addSubField "337.b.cf" if(exists "007.{0,2}.cf")
addField "338.a.computer tape reel" if(exists "007.{0,2}.ch")
addSubField "337.b.ch" if(exists "007.{0,2}.ch")
addField "338.a.online resource" if(exists "007.{0,2}.cr")
addSubField "337.b.cr" if(exists "007.{0,2}.cz")
addField "338.a.other" if(exists "007.{0,2}.cz")
addSubField "337.b.cz" if(exists "007.{0,2}.cz")
addField "338.a.audio cartridge" if(exists "007.{0,2}.sg")
addSubField "337.b.sg" if(exists "007.{0,2}.sg")
addField "338.a.audio belt" if(exists "007.{0,2}.sb")
addSubField "337.b.sb" if(exists "007.{0,2}.sb")
addField "338.a.audio cylinder" if(exists "007.{0,2}.se")
addSubField "337.b.se" if(exists "007.{0,2}.se")
addField "338.a.audio disc" if(exists "007.{0,2}.sd")
addSubField "337.b.sd" if(exists "007.{0,2}.sd")
addField "338.a.sound track reel" if(exists "007.{0,2}.si")
addSubField "337.b.si" if(exists "007.{0,2}.si")
addField "338.a.audio roll" if(exists "007.{0,2}.sq")
addSubField "337.b.sq" if(exists "007.{0,2}.sq")
addField "338.a.audio wire reel" if(exists "007.{0,2}.sw")
addSubField "337.b.sw" if(exists "007.{0,2}.sw")
addField "338.a.audiocassette" if(exists "007.{0,2}.ss")
addSubField "337.b.ss" if(exists "007.{0,2}.ss")
addField "338.a.audiotape reel" if(exists "007.{0,2}.st")
addSubField "337.b.st" if(exists "007.{0,2}.st")
addField "338.a.other" if(exists "007.{0,2}.sz")
addSubField "337.b.sz" if(exists "007.{0,2}.sz")
addField "338.a.aperture card" if(exists "007.{0,2}.ha")
addSubField "337.b.ha" if(exists "007.{0,2}.ha")
addField "338.a.microfiche" if(exists "007.{0,2}.he")
addSubField "337.b.he" if(exists "007.{0,2}.he")
addField "338.a.microfiche cassette" if(exists "007.{0,2}.hf")
addSubField "337.b.hf" if(exists "007.{0,2}.hf")
addField "338.a.microfilm cartridge" if(exists "007.{0,2}.hb")
addSubField "337.b.hb" if(exists "007.{0,2}.hb")
addField "338.a.microfilm cassette" if(exists "007.{0,2}.hc")
addSubField "337.b.hc" if(exists "007.{0,2}.hc")
addField "338.a.microfilm reel" if(exists "007.{0,2}.hd")
addSubField "337.b.hd" if(exists "007.{0,2}.hd")
addField "338.a.microfilm roll" if(exists "007.{0,2}.hj")
addSubField "337.b.hj" if(exists "007.{0,2}.hj")
addField "338.a.microfilm slip" if(exists "007.{0,2}.hh")
addSubField "337.b.hh" if(exists "007.{0,2}.hh")
addField "338.a.other" if(exists "007.{0,2}.hz")
addSubField "337.b.hz" if(exists "007.{0,2}.hz")
addField "338.a.film cartridge" if(exists "007.{0,2}.mc")
addSubField "337.b.mc" if(exists "007.{0,2}.mc")
addField "338.a.film cassette" if(exists "007.{0,2}.mf")
addSubField "337.b.mf" if(exists "007.{0,2}.mf")
addField "338.a.film reel" if(exists "007.{0,2}.mr")
addSubField "337.b.mr" if(exists "007.{0,2}.mr")
addField "338.a.film roll" if(exists "007.{0,2}.mo")
addSubField "337.b.mo" if(exists "007.{0,2}.mo")
addField "338.a.filmslip" if(exists "007.{0,2}.gd")
addSubField "337.b.gd" if(exists "007.{0,2}.gd")
addField "338.a.filmstrip" if(exists "007.{0,2}.gf")
addSubField "337.b.gf" if(exists "007.{0,2}.gf")
addField "338.a.filmstrip cartridge" if(exists "007.{0,2}.gc")
addSubField "337.b.gc" if(exists "007.{0,2}.gc")
addField "338.a.overhead transparency" if(exists "007.{0,2}.gt")
addSubField "337.b.gt" if(exists "007.{0,2}.gt")
addField "338.a.slide" if(exists "007.{0,2}.gs")
addSubField "337.b.gs" if(exists "007.{0,2}.gs")
addField "338.a.other" if(exists "007.{0,2}.mz")
addSubField "337.b.mz" if(exists "007.{0,2}.mz")
addField "338.a.stereograph card" if(exists "007.{0,2}.eh")
addSubField "337.b.eh" if(exists "007.{0,2}.eh")
addField "338.a.stereograph disc" if(exists "007.{0,2}.es")
addSubField "337.b.es" if(exists "007.{0,2}.es")
addField "338.a.object" if(exists "007.{0,2}.nr")
addSubField "337.b.nr" if(exists "007.{0,2}.nr")
addField "338.a.volume" if(exists "337.a.unmediated")
addSubField "337.b.nc" if(exists "337.a.unmediated")
addField "338.a.video cartridge" if(exists "007.{0,2}.vc")
addSubField "337.b.vc" if(exists "007.{0,2}.vc")
addField "338.a.videocassette" if(exists "007.{0,2}.vf")
addSubField "337.b.vf" if(exists "007.{0,2}.vf")
addField "338.a.videodisc" if(exists "007.{0,2}.vd")
addSubField "337.b.vd" if(exists "007.{0,2}.vd")
addField "338.a.videotape reel" if(exists "007.{0,2}.vr")
addSubField "337.b.vr" if(exists "007.{0,2}.vr")
addField "338.a.other" if(exists "007.{0,2}.vz")
addSubField "337.b.vz" if(exists "007.{0,2}.vz")
addField "338.a.other" if(exists "007.{0,2}.zu")
addSubField "337.b.zu" if(exists "007.{0,2}.zu")
addSubField "337.2.rdacarrier"
end


