@natlibfi/marc-record-validators-melinda 11.0.0 → 11.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (309) hide show
  1. package/dist/addMissingField336.js +272 -0
  2. package/dist/addMissingField336.js.map +1 -0
  3. package/dist/addMissingField336.spec.js +45 -0
  4. package/dist/addMissingField336.spec.js.map +1 -0
  5. package/dist/addMissingField337.js +177 -0
  6. package/dist/addMissingField337.js.map +1 -0
  7. package/dist/addMissingField337.spec.js +43 -0
  8. package/dist/addMissingField337.spec.js.map +1 -0
  9. package/dist/addMissingField338.js +424 -0
  10. package/dist/addMissingField338.js.map +1 -0
  11. package/dist/addMissingField338.spec.js +45 -0
  12. package/dist/addMissingField338.spec.js.map +1 -0
  13. package/dist/cyrillux-usemarcon-replacement.js +370 -0
  14. package/dist/cyrillux-usemarcon-replacement.js.map +1 -0
  15. package/dist/cyrillux-usemarcon-replacement.spec.js +45 -0
  16. package/dist/cyrillux-usemarcon-replacement.spec.js.map +1 -0
  17. package/dist/field33XUtils.js +529 -0
  18. package/dist/field33XUtils.js.map +1 -0
  19. package/dist/fix-33X.js +484 -0
  20. package/dist/fix-33X.js.map +1 -0
  21. package/dist/fix-33X.spec.js +45 -0
  22. package/dist/fix-33X.spec.js.map +1 -0
  23. package/dist/fix-language-codes.js +109 -0
  24. package/dist/fix-language-codes.js.map +1 -0
  25. package/dist/fix-language-codes.spec.js +44 -0
  26. package/dist/fix-language-codes.spec.js.map +1 -0
  27. package/dist/fixRelatorTerms.js +1 -1
  28. package/dist/fixRelatorTerms.js.map +1 -1
  29. package/dist/punctuation2.js +4 -3
  30. package/dist/punctuation2.js.map +1 -1
  31. package/dist/resolvable-ext-references-melinda.spec.js +1 -1
  32. package/dist/resolvable-ext-references-melinda.spec.js.map +1 -1
  33. package/dist/sanitize-vocabulary-source-codes.js +7 -10
  34. package/dist/sanitize-vocabulary-source-codes.js.map +1 -1
  35. package/dist/utils.js +13 -8
  36. package/dist/utils.js.map +1 -1
  37. package/package.json +7 -7
  38. package/src/addMissingField336.js +260 -0
  39. package/src/addMissingField336.spec.js +46 -0
  40. package/src/addMissingField337.js +132 -0
  41. package/src/addMissingField337.spec.js +45 -0
  42. package/src/addMissingField338.js +446 -0
  43. package/src/addMissingField338.spec.js +46 -0
  44. package/src/cyrillux-usemarcon-replacement.js +410 -0
  45. package/src/cyrillux-usemarcon-replacement.spec.js +47 -0
  46. package/src/field33XUtils.js +156 -0
  47. package/src/fix-33X.js +473 -0
  48. package/src/fix-33X.spec.js +46 -0
  49. package/src/fix-language-codes.js +121 -0
  50. package/src/fix-language-codes.spec.js +45 -0
  51. package/src/fixRelatorTerms.js +1 -1
  52. package/src/punctuation2.js +3 -3
  53. package/src/sanitize-vocabulary-source-codes.js +9 -11
  54. package/src/utils.js +13 -8
  55. package/test-fixtures/addMissingField336/01/expectedResult.json +6 -0
  56. package/test-fixtures/addMissingField336/01/metadata.json +7 -0
  57. package/test-fixtures/addMissingField336/01/record.json +8 -0
  58. package/test-fixtures/addMissingField336/02/expectedResult.json +4 -0
  59. package/test-fixtures/addMissingField336/02/metadata.json +7 -0
  60. package/test-fixtures/addMissingField336/02/record.json +13 -0
  61. package/test-fixtures/addMissingField336/cod/expectedResult.json +12 -0
  62. package/test-fixtures/addMissingField336/cod/metadata.json +6 -0
  63. package/test-fixtures/addMissingField336/cod/record.json +6 -0
  64. package/test-fixtures/addMissingField336/cop/expectedResult.json +12 -0
  65. package/test-fixtures/addMissingField336/cop/metadata.json +6 -0
  66. package/test-fixtures/addMissingField336/cop/record.json +6 -0
  67. package/test-fixtures/addMissingField336/cop2/expectedResult.json +13 -0
  68. package/test-fixtures/addMissingField336/cop2/metadata.json +6 -0
  69. package/test-fixtures/addMissingField336/cop2/record.json +7 -0
  70. package/test-fixtures/addMissingField336/crf/expectedResult.json +12 -0
  71. package/test-fixtures/addMissingField336/crf/metadata.json +6 -0
  72. package/test-fixtures/addMissingField336/crf/record.json +6 -0
  73. package/test-fixtures/addMissingField336/cri/expectedResult.json +12 -0
  74. package/test-fixtures/addMissingField336/cri/metadata.json +6 -0
  75. package/test-fixtures/addMissingField336/cri/record.json +6 -0
  76. package/test-fixtures/addMissingField336/crt/expectedResult.json +13 -0
  77. package/test-fixtures/addMissingField336/crt/metadata.json +6 -0
  78. package/test-fixtures/addMissingField336/crt/record.json +7 -0
  79. package/test-fixtures/addMissingField336/f01/expectedResult.json +17 -0
  80. package/test-fixtures/addMissingField336/f01/metadata.json +6 -0
  81. package/test-fixtures/addMissingField336/f01/record.json +11 -0
  82. package/test-fixtures/addMissingField336/f02/expectedResult.json +15 -0
  83. package/test-fixtures/addMissingField336/f02/metadata.json +6 -0
  84. package/test-fixtures/addMissingField336/f02/record.json +9 -0
  85. package/test-fixtures/addMissingField336/mixed2txt/expectedResult.json +12 -0
  86. package/test-fixtures/addMissingField336/mixed2txt/metadata.json +6 -0
  87. package/test-fixtures/addMissingField336/mixed2txt/record.json +6 -0
  88. package/test-fixtures/addMissingField336/mixed2xxx/expectedResult.json +12 -0
  89. package/test-fixtures/addMissingField336/mixed2xxx/metadata.json +6 -0
  90. package/test-fixtures/addMissingField336/mixed2xxx/record.json +6 -0
  91. package/test-fixtures/addMissingField336/ntm/expectedResult.json +12 -0
  92. package/test-fixtures/addMissingField336/ntm/metadata.json +6 -0
  93. package/test-fixtures/addMissingField336/ntm/record.json +6 -0
  94. package/test-fixtures/addMissingField336/snd/expectedResult.json +12 -0
  95. package/test-fixtures/addMissingField336/snd/metadata.json +6 -0
  96. package/test-fixtures/addMissingField336/snd/record.json +6 -0
  97. package/test-fixtures/addMissingField336/spw/expectedResult.json +12 -0
  98. package/test-fixtures/addMissingField336/spw/metadata.json +6 -0
  99. package/test-fixtures/addMissingField336/spw/record.json +6 -0
  100. package/test-fixtures/addMissingField336/spw2/expectedResult.json +13 -0
  101. package/test-fixtures/addMissingField336/spw2/metadata.json +6 -0
  102. package/test-fixtures/addMissingField336/spw2/record.json +7 -0
  103. package/test-fixtures/addMissingField336/spw_txt/expectedResult.json +18 -0
  104. package/test-fixtures/addMissingField336/spw_txt/metadata.json +6 -0
  105. package/test-fixtures/addMissingField336/spw_txt/record.json +7 -0
  106. package/test-fixtures/addMissingField336/sti/expectedResult.json +12 -0
  107. package/test-fixtures/addMissingField336/sti/metadata.json +6 -0
  108. package/test-fixtures/addMissingField336/sti/record.json +6 -0
  109. package/test-fixtures/addMissingField336/sti_projected/expectedResult.json +13 -0
  110. package/test-fixtures/addMissingField336/sti_projected/metadata.json +6 -0
  111. package/test-fixtures/addMissingField336/sti_projected/record.json +7 -0
  112. package/test-fixtures/addMissingField336/tci/expectedResult.json +12 -0
  113. package/test-fixtures/addMissingField336/tci/metadata.json +6 -0
  114. package/test-fixtures/addMissingField336/tci/record.json +6 -0
  115. package/test-fixtures/addMissingField336/tcm/expectedResult.json +12 -0
  116. package/test-fixtures/addMissingField336/tcm/metadata.json +6 -0
  117. package/test-fixtures/addMissingField336/tcm/record.json +6 -0
  118. package/test-fixtures/addMissingField336/tdf/expectedResult.json +12 -0
  119. package/test-fixtures/addMissingField336/tdf/metadata.json +6 -0
  120. package/test-fixtures/addMissingField336/tdf/record.json +6 -0
  121. package/test-fixtures/addMissingField336/tdi/expectedResult.json +13 -0
  122. package/test-fixtures/addMissingField336/tdi/metadata.json +6 -0
  123. package/test-fixtures/addMissingField336/tdi/record.json +7 -0
  124. package/test-fixtures/addMissingField336/txt/expectedResult.json +12 -0
  125. package/test-fixtures/addMissingField336/txt/metadata.json +6 -0
  126. package/test-fixtures/addMissingField336/txt/record.json +6 -0
  127. package/test-fixtures/addMissingField336/zzz/expectedResult.json +13 -0
  128. package/test-fixtures/addMissingField336/zzz/metadata.json +6 -0
  129. package/test-fixtures/addMissingField336/zzz/record.json +7 -0
  130. package/test-fixtures/addMissingField337/c1/expectedResult.json +12 -0
  131. package/test-fixtures/addMissingField337/c1/metadata.json +6 -0
  132. package/test-fixtures/addMissingField337/c1/record.json +7 -0
  133. package/test-fixtures/addMissingField337/g1/expectedResult.json +13 -0
  134. package/test-fixtures/addMissingField337/g1/metadata.json +6 -0
  135. package/test-fixtures/addMissingField337/g1/record.json +7 -0
  136. package/test-fixtures/addMissingField337/n1/expectedResult.json +12 -0
  137. package/test-fixtures/addMissingField337/n1/metadata.json +6 -0
  138. package/test-fixtures/addMissingField337/n1/record.json +6 -0
  139. package/test-fixtures/addMissingField337/no_action_required/expectedResult.json +12 -0
  140. package/test-fixtures/addMissingField337/no_action_required/metadata.json +7 -0
  141. package/test-fixtures/addMissingField337/no_action_required/record.json +11 -0
  142. package/test-fixtures/addMissingField337/p1/expectedResult.json +12 -0
  143. package/test-fixtures/addMissingField337/p1/metadata.json +6 -0
  144. package/test-fixtures/addMissingField337/p1/record.json +6 -0
  145. package/test-fixtures/addMissingField337/validate_x1/expectedResult.json +6 -0
  146. package/test-fixtures/addMissingField337/validate_x1/metadata.json +6 -0
  147. package/test-fixtures/addMissingField337/validate_x1/record.json +6 -0
  148. package/test-fixtures/addMissingField338/cb/expectedResult.json +14 -0
  149. package/test-fixtures/addMissingField338/cb/metadata.json +6 -0
  150. package/test-fixtures/addMissingField338/cb/record.json +8 -0
  151. package/test-fixtures/addMissingField338/cd/expectedResult.json +14 -0
  152. package/test-fixtures/addMissingField338/cd/metadata.json +6 -0
  153. package/test-fixtures/addMissingField338/cd/record.json +8 -0
  154. package/test-fixtures/addMissingField338/ck/expectedResult.json +14 -0
  155. package/test-fixtures/addMissingField338/ck/metadata.json +6 -0
  156. package/test-fixtures/addMissingField338/ck/record.json +8 -0
  157. package/test-fixtures/addMissingField338/cr/expectedResult.json +15 -0
  158. package/test-fixtures/addMissingField338/cr/metadata.json +6 -0
  159. package/test-fixtures/addMissingField338/cr/record.json +9 -0
  160. package/test-fixtures/addMissingField338/cr2/expectedResult.json +14 -0
  161. package/test-fixtures/addMissingField338/cr2/metadata.json +6 -0
  162. package/test-fixtures/addMissingField338/cr2/record.json +8 -0
  163. package/test-fixtures/addMissingField338/cr3/expectedResult.json +18 -0
  164. package/test-fixtures/addMissingField338/cr3/metadata.json +6 -0
  165. package/test-fixtures/addMissingField338/cr3/record.json +12 -0
  166. package/test-fixtures/addMissingField338/cr4/expectedResult.json +15 -0
  167. package/test-fixtures/addMissingField338/cr4/metadata.json +6 -0
  168. package/test-fixtures/addMissingField338/cr4/record.json +9 -0
  169. package/test-fixtures/addMissingField338/gc/expectedResult.json +12 -0
  170. package/test-fixtures/addMissingField338/gc/metadata.json +6 -0
  171. package/test-fixtures/addMissingField338/gc/record.json +7 -0
  172. package/test-fixtures/addMissingField338/gd/expectedResult.json +13 -0
  173. package/test-fixtures/addMissingField338/gd/metadata.json +6 -0
  174. package/test-fixtures/addMissingField338/gd/record.json +8 -0
  175. package/test-fixtures/addMissingField338/gf/expectedResult.json +13 -0
  176. package/test-fixtures/addMissingField338/gf/metadata.json +6 -0
  177. package/test-fixtures/addMissingField338/gf/record.json +8 -0
  178. package/test-fixtures/addMissingField338/gs/expectedResult.json +15 -0
  179. package/test-fixtures/addMissingField338/gs/metadata.json +6 -0
  180. package/test-fixtures/addMissingField338/gs/record.json +9 -0
  181. package/test-fixtures/addMissingField338/gt/expectedResult.json +15 -0
  182. package/test-fixtures/addMissingField338/gt/metadata.json +6 -0
  183. package/test-fixtures/addMissingField338/gt/record.json +9 -0
  184. package/test-fixtures/addMissingField338/hd/expectedResult.json +16 -0
  185. package/test-fixtures/addMissingField338/hd/metadata.json +6 -0
  186. package/test-fixtures/addMissingField338/hd/record.json +10 -0
  187. package/test-fixtures/addMissingField338/he/expectedResult.json +15 -0
  188. package/test-fixtures/addMissingField338/he/metadata.json +6 -0
  189. package/test-fixtures/addMissingField338/he/record.json +9 -0
  190. package/test-fixtures/addMissingField338/he2/expectedResult.json +12 -0
  191. package/test-fixtures/addMissingField338/he2/metadata.json +6 -0
  192. package/test-fixtures/addMissingField338/he2/record.json +6 -0
  193. package/test-fixtures/addMissingField338/hg/expectedResult.json +15 -0
  194. package/test-fixtures/addMissingField338/hg/metadata.json +7 -0
  195. package/test-fixtures/addMissingField338/hg/record.json +9 -0
  196. package/test-fixtures/addMissingField338/hg2/expectedResult.json +15 -0
  197. package/test-fixtures/addMissingField338/hg2/metadata.json +6 -0
  198. package/test-fixtures/addMissingField338/hg2/record.json +9 -0
  199. package/test-fixtures/addMissingField338/hj/expectedResult.json +15 -0
  200. package/test-fixtures/addMissingField338/hj/metadata.json +6 -0
  201. package/test-fixtures/addMissingField338/hj/record.json +9 -0
  202. package/test-fixtures/addMissingField338/hj2/expectedResult.json +15 -0
  203. package/test-fixtures/addMissingField338/hj2/metadata.json +6 -0
  204. package/test-fixtures/addMissingField338/hj2/record.json +9 -0
  205. package/test-fixtures/addMissingField338/mo/expectedResult.json +15 -0
  206. package/test-fixtures/addMissingField338/mo/metadata.json +6 -0
  207. package/test-fixtures/addMissingField338/mo/record.json +9 -0
  208. package/test-fixtures/addMissingField338/nc/expectedResult.json +19 -0
  209. package/test-fixtures/addMissingField338/nc/metadata.json +6 -0
  210. package/test-fixtures/addMissingField338/nc/record.json +13 -0
  211. package/test-fixtures/addMissingField338/nr/expectedResult.json +12 -0
  212. package/test-fixtures/addMissingField338/nr/metadata.json +7 -0
  213. package/test-fixtures/addMissingField338/nr/record.json +6 -0
  214. package/test-fixtures/addMissingField338/sd/expectedResult.json +14 -0
  215. package/test-fixtures/addMissingField338/sd/metadata.json +6 -0
  216. package/test-fixtures/addMissingField338/sd/record.json +8 -0
  217. package/test-fixtures/addMissingField338/sd2/expectedResult.json +14 -0
  218. package/test-fixtures/addMissingField338/sd2/metadata.json +6 -0
  219. package/test-fixtures/addMissingField338/sd2/record.json +8 -0
  220. package/test-fixtures/addMissingField338/sd3/expectedResult.json +14 -0
  221. package/test-fixtures/addMissingField338/sd3/metadata.json +6 -0
  222. package/test-fixtures/addMissingField338/sd3/record.json +8 -0
  223. package/test-fixtures/addMissingField338/ss/expectedResult.json +14 -0
  224. package/test-fixtures/addMissingField338/ss/metadata.json +6 -0
  225. package/test-fixtures/addMissingField338/ss/record.json +8 -0
  226. package/test-fixtures/addMissingField338/ss2/expectedResult.json +14 -0
  227. package/test-fixtures/addMissingField338/ss2/metadata.json +6 -0
  228. package/test-fixtures/addMissingField338/ss2/record.json +8 -0
  229. package/test-fixtures/addMissingField338/vd/expectedResult.json +15 -0
  230. package/test-fixtures/addMissingField338/vd/metadata.json +6 -0
  231. package/test-fixtures/addMissingField338/vd/record.json +9 -0
  232. package/test-fixtures/addMissingField338/vd2/expectedResult.json +13 -0
  233. package/test-fixtures/addMissingField338/vd2/metadata.json +6 -0
  234. package/test-fixtures/addMissingField338/vd2/record.json +8 -0
  235. package/test-fixtures/addMissingField338/vf/expectedResult.json +15 -0
  236. package/test-fixtures/addMissingField338/vf/metadata.json +6 -0
  237. package/test-fixtures/addMissingField338/vf/record.json +9 -0
  238. package/test-fixtures/addMissingField338/zu/expectedResult.json +14 -0
  239. package/test-fixtures/addMissingField338/zu/metadata.json +6 -0
  240. package/test-fixtures/addMissingField338/zu/record.json +8 -0
  241. package/test-fixtures/cyrillux-usemarcon-replacement/f01/expectedResult.json +32 -0
  242. package/test-fixtures/cyrillux-usemarcon-replacement/f01/metadata.json +7 -0
  243. package/test-fixtures/cyrillux-usemarcon-replacement/f01/record.json +20 -0
  244. package/test-fixtures/cyrillux-usemarcon-replacement/f02/expectedResult.json +29 -0
  245. package/test-fixtures/cyrillux-usemarcon-replacement/f02/metadata.json +7 -0
  246. package/test-fixtures/cyrillux-usemarcon-replacement/f02/record.json +9 -0
  247. package/test-fixtures/cyrillux-usemarcon-replacement/f03/expectedResult.json +34 -0
  248. package/test-fixtures/cyrillux-usemarcon-replacement/f03/metadata.json +7 -0
  249. package/test-fixtures/cyrillux-usemarcon-replacement/f03/record.json +12 -0
  250. package/test-fixtures/cyrillux-usemarcon-replacement/f04/expectedResult.json +26 -0
  251. package/test-fixtures/cyrillux-usemarcon-replacement/f04/metadata.json +8 -0
  252. package/test-fixtures/cyrillux-usemarcon-replacement/f04/record.json +6 -0
  253. package/test-fixtures/cyrillux-usemarcon-replacement/f05/expectedResult.json +27 -0
  254. package/test-fixtures/cyrillux-usemarcon-replacement/f05/metadata.json +7 -0
  255. package/test-fixtures/cyrillux-usemarcon-replacement/f05/record.json +8 -0
  256. package/test-fixtures/cyrillux-usemarcon-replacement/f06/expectedResult.json +27 -0
  257. package/test-fixtures/cyrillux-usemarcon-replacement/f06/metadata.json +7 -0
  258. package/test-fixtures/cyrillux-usemarcon-replacement/f06/record.json +8 -0
  259. package/test-fixtures/cyrillux-usemarcon-replacement/f07/expectedResult.json +25 -0
  260. package/test-fixtures/cyrillux-usemarcon-replacement/f07/metadata.json +7 -0
  261. package/test-fixtures/cyrillux-usemarcon-replacement/f07/record.json +8 -0
  262. package/test-fixtures/cyrillux-usemarcon-replacement/f08/expectedResult.json +34 -0
  263. package/test-fixtures/cyrillux-usemarcon-replacement/f08/metadata.json +6 -0
  264. package/test-fixtures/cyrillux-usemarcon-replacement/f08/record.json +33 -0
  265. package/test-fixtures/cyrillux-usemarcon-replacement/f09/expectedResult.json +35 -0
  266. package/test-fixtures/cyrillux-usemarcon-replacement/f09/metadata.json +6 -0
  267. package/test-fixtures/cyrillux-usemarcon-replacement/f09/record.json +35 -0
  268. package/test-fixtures/cyrillux-usemarcon-replacement/f10/expectedResult.json +41 -0
  269. package/test-fixtures/cyrillux-usemarcon-replacement/f10/metadata.json +7 -0
  270. package/test-fixtures/cyrillux-usemarcon-replacement/f10/record.json +33 -0
  271. package/test-fixtures/cyrillux-usemarcon-replacement/f11/expectedResult.json +32 -0
  272. package/test-fixtures/cyrillux-usemarcon-replacement/f11/metadata.json +6 -0
  273. package/test-fixtures/cyrillux-usemarcon-replacement/f11/record.json +22 -0
  274. package/test-fixtures/cyrillux-usemarcon-replacement/v01/expectedResult.json +7 -0
  275. package/test-fixtures/cyrillux-usemarcon-replacement/v01/metadata.json +6 -0
  276. package/test-fixtures/cyrillux-usemarcon-replacement/v01/record.json +20 -0
  277. package/test-fixtures/cyrillux-usemarcon-replacement/v02/expectedResult.json +5 -0
  278. package/test-fixtures/cyrillux-usemarcon-replacement/v02/metadata.json +6 -0
  279. package/test-fixtures/cyrillux-usemarcon-replacement/v02/record.json +29 -0
  280. package/test-fixtures/fix-33X/f11/expectedResult.json +29 -0
  281. package/test-fixtures/fix-33X/f11/metadata.json +6 -0
  282. package/test-fixtures/fix-33X/f11/record.json +22 -0
  283. package/test-fixtures/fix-33X/v11/expectedResult.json +9 -0
  284. package/test-fixtures/fix-33X/v11/metadata.json +6 -0
  285. package/test-fixtures/fix-33X/v11/record.json +22 -0
  286. package/test-fixtures/fix-language-codes/01/expectedResult.json +5 -0
  287. package/test-fixtures/fix-language-codes/01/metadata.json +6 -0
  288. package/test-fixtures/fix-language-codes/01/record.json +7 -0
  289. package/test-fixtures/fix-language-codes/02/expectedResult.json +7 -0
  290. package/test-fixtures/fix-language-codes/02/metadata.json +6 -0
  291. package/test-fixtures/fix-language-codes/02/record.json +10 -0
  292. package/test-fixtures/fix-language-codes/03/expectedResult.json +10 -0
  293. package/test-fixtures/fix-language-codes/03/metadata.json +6 -0
  294. package/test-fixtures/fix-language-codes/03/record.json +8 -0
  295. package/test-fixtures/fix-language-codes/04/expectedResult.json +9 -0
  296. package/test-fixtures/fix-language-codes/04/metadata.json +7 -0
  297. package/test-fixtures/fix-language-codes/04/record.json +7 -0
  298. package/test-fixtures/fix-language-codes/05/expectedResult.json +8 -0
  299. package/test-fixtures/fix-language-codes/05/metadata.json +6 -0
  300. package/test-fixtures/fix-language-codes/05/record.json +5 -0
  301. package/test-fixtures/punctuation2/95/expectedResult.json +22 -0
  302. package/test-fixtures/punctuation2/95/metadata.json +6 -0
  303. package/test-fixtures/punctuation2/95/record.json +20 -0
  304. package/test-fixtures/sanitize-vocabulary-source-codes/f03/expectedResult.json +143 -0
  305. package/test-fixtures/sanitize-vocabulary-source-codes/f03/metadata.json +9 -0
  306. package/test-fixtures/sanitize-vocabulary-source-codes/f03/record.json +145 -0
  307. package/test-fixtures/sanitize-vocabulary-source-codes/v03/expectedResult.json +5 -0
  308. package/test-fixtures/sanitize-vocabulary-source-codes/v03/metadata.json +6 -0
  309. package/test-fixtures/sanitize-vocabulary-source-codes/v03/record.json +145 -0
@@ -0,0 +1,6 @@
1
+ {
2
+ "description": "Fix: Add field 338(b=sd). Decision is based on LDR/06=i and 300",
3
+ "enabled": true,
4
+ "only": false,
5
+ "fix": true
6
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "leader": "12345cim a22123454i 4500",
3
+ "fields": [
4
+ { "tag": "008", "value": "012345s2000 xxu|||||||||||||||||fin| " },
5
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [ { "code": "b", "value": "mul" } ]},
6
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [ { "code": "a", "value": "1 CD-levy (random stuff)" } ]}
7
+ ]
8
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cim a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "008", "value": "012345s2000 xxu|||||||||||||||||fin| " },
6
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [ { "code": "b", "value": "mul" } ]},
7
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [ { "code": "a", "value": "1 äänilevy" } ]},
8
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
9
+ { "code": "a", "value": "äänilevy" },
10
+ { "code": "b", "value": "sd" },
11
+ { "code": "2", "value": "rdacarrier" }
12
+ ]}
13
+ ]
14
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "description": "Fix: Add field 338(b=sd). Decision is based on LDR/06=i and 300",
3
+ "enabled": true,
4
+ "only": false,
5
+ "fix": true
6
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "leader": "12345cim a22123454i 4500",
3
+ "fields": [
4
+ { "tag": "008", "value": "012345s2000 xxu|||||||||||||||||fin| " },
5
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [ { "code": "b", "value": "mul" } ]},
6
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [ { "code": "a", "value": "1 äänilevy" } ]}
7
+ ]
8
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cim a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "007", "value": "sd234567890123" },
6
+ { "tag": "008", "value": "012345s2000 xxu|||||||||||||||||fin| " },
7
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [ { "code": "b", "value": "mul" } ]},
8
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
9
+ { "code": "a", "value": "äänilevy" },
10
+ { "code": "b", "value": "sd" },
11
+ { "code": "2", "value": "rdacarrier" }
12
+ ]}
13
+ ]
14
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "description": "Fix: Add field 338(b=sd). Decision is based on LDR/06=i and 300",
3
+ "enabled": true,
4
+ "only": false,
5
+ "fix": true
6
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "leader": "12345cim a22123454i 4500",
3
+ "fields": [
4
+ { "tag": "007", "value": "sd234567890123" },
5
+ { "tag": "008", "value": "012345s2000 xxu|||||||||||||||||fin| " },
6
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [ { "code": "b", "value": "mul" } ]}
7
+ ]
8
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cjm a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "008", "value": "012345s2000 xxu|||||||||||||||||fin| " },
6
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [ { "code": "b", "value": "mul" } ]},
7
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [ { "code": "a", "value": "1 whateverkassett (random stuff)" } ]},
8
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
9
+ { "code": "a", "value": "äänikasetti" },
10
+ { "code": "b", "value": "ss" },
11
+ { "code": "2", "value": "rdacarrier" }
12
+ ]}
13
+ ]
14
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "description": "Fix: Add field 338(b=ss). Decision is based of LDR/06=j and 300",
3
+ "enabled": true,
4
+ "only": false,
5
+ "fix": true
6
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "leader": "12345cjm a22123454i 4500",
3
+ "fields": [
4
+ { "tag": "008", "value": "012345s2000 xxu|||||||||||||||||fin| " },
5
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [ { "code": "b", "value": "mul" } ]},
6
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [ { "code": "a", "value": "1 whateverkassett (random stuff)" } ]}
7
+ ]
8
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cim a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "008", "value": "012345s2000 xxu|||||||||||||||||fin| " },
6
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [ { "code": "b", "value": "mul" } ]},
7
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [ { "code": "a", "value": "1 C-kassett" } ]},
8
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
9
+ { "code": "a", "value": "äänikasetti" },
10
+ { "code": "b", "value": "ss" },
11
+ { "code": "2", "value": "rdacarrier" }
12
+ ]}
13
+ ]
14
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "description": "Fix: Add field 338(b=sd). Decision is based on LDR/06=i and 300",
3
+ "enabled": true,
4
+ "only": false,
5
+ "fix": true
6
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "leader": "12345cim a22123454i 4500",
3
+ "fields": [
4
+ { "tag": "008", "value": "012345s2000 xxu|||||||||||||||||fin| " },
5
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [ { "code": "b", "value": "mul" } ]},
6
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [ { "code": "a", "value": "1 C-kassett" } ]}
7
+ ]
8
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cgm a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "008", "value": "012345s2000 xxunnn||||||||||||snfin| " },
6
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [
7
+ { "code": "a", "value": "1 VIDEODISC" }
8
+ ]},
9
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
10
+ { "code": "a", "value": "videolevy" },
11
+ { "code": "b", "value": "vd" },
12
+ { "code": "2", "value": "rdacarrier" }
13
+ ]}
14
+ ]
15
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "description": "Fix: Add field 338(b=gs). Decision is based of LDR/06=g and 300$a",
3
+ "enabled": true,
4
+ "only": false,
5
+ "fix": true
6
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "leader": "12345cgm a22123454i 4500",
3
+ "fields": [
4
+ { "tag": "008", "value": "012345s2000 xxunnn||||||||||||snfin| " },
5
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [
6
+ { "code": "a", "value": "1 VIDEODISC" }
7
+ ]}
8
+ ]
9
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cgm a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "007", "value": "vd2345678" },
6
+ { "tag": "008", "value": "012345s2000 xxunnn||||||||||||snfin| " },
7
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
8
+ { "code": "a", "value": "videolevy" },
9
+ { "code": "b", "value": "vd" },
10
+ { "code": "2", "value": "rdacarrier" }
11
+ ]}
12
+ ]
13
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "description": "Fix: Add field 338(b=gs). Decision is based of LDR/06=g and 300$a",
3
+ "enabled": true,
4
+ "only": false,
5
+ "fix": true
6
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "leader": "12345cgm a22123454i 4500",
3
+ "fields": [
4
+ { "tag": "007", "value": "vd2345678" },
5
+ { "tag": "008", "value": "012345s2000 xxunnn||||||||||||snfin| " }
6
+
7
+ ]
8
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cgm a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "008", "value": "012345s2000 xxunnn||||||||||||snfin| " },
6
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [
7
+ { "code": "a", "value": "1 VHS-kasetti [60 min]" }
8
+ ]},
9
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
10
+ { "code": "a", "value": "videokasetti" },
11
+ { "code": "b", "value": "vf" },
12
+ { "code": "2", "value": "rdacarrier" }
13
+ ]}
14
+ ]
15
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "description": "Fix: Add field 338(b=gs). Decision is based of LDR/06=g and 300$a",
3
+ "enabled": true,
4
+ "only": false,
5
+ "fix": true
6
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "leader": "12345cgm a22123454i 4500",
3
+ "fields": [
4
+ { "tag": "008", "value": "012345s2000 xxunnn||||||||||||snfin| " },
5
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [
6
+ { "code": "a", "value": "1 VHS-kasetti [60 min]" }
7
+ ]}
8
+ ]
9
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cim a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "008", "value": "012345s2000 xxu|||||||||||||||||fin| " },
6
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [ { "code": "b", "value": "mul" } ]},
7
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [ { "code": "e", "value": "liite" } ]},
8
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
9
+ { "code": "a", "value": "määrittelemätön" },
10
+ { "code": "b", "value": "zu" },
11
+ { "code": "2", "value": "rdacarrier" }
12
+ ]}
13
+ ]
14
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "description": "Fix: Add field 338(b=sd). Decision is based on LDR/06=i and 300",
3
+ "enabled": true,
4
+ "only": false,
5
+ "fix": true
6
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "leader": "12345cim a22123454i 4500",
3
+ "fields": [
4
+ { "tag": "008", "value": "012345s2000 xxu|||||||||||||||||fin| " },
5
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [ { "code": "b", "value": "mul" } ]},
6
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [ { "code": "e", "value": "liite" } ]}
7
+ ]
8
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cam a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [
6
+ { "code": "a", "value": "FI-A" },
7
+ { "code": "b", "value": "mul" },
8
+ { "code": "e", "value": "rda" },
9
+ { "code": "c", "value": "FI-C" },
10
+ { "code": "d", "value": "FI-D" }
11
+
12
+ ]},
13
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [
14
+ { "code": "a", "value": "123 sivua" }
15
+ ]},
16
+ { "tag": "336", "ind1": " ", "ind2": " ", "subfields": [
17
+ { "code": "a", "value": "teksti" },
18
+ { "code": "b", "value": "txt" },
19
+ { "code": "2", "value": "rdacontent" }
20
+ ]},
21
+ { "tag": "337", "ind1": " ", "ind2": " ", "subfields": [
22
+ { "code": "a", "value": "käytettävissä ilman laitetta" },
23
+ { "code": "b", "value": "n" },
24
+ { "code": "2", "value": "rdamedia" }
25
+ ]},
26
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
27
+ { "code": "a", "value": "nide" },
28
+ { "code": "b", "value": "nc" },
29
+ { "code": "2", "value": "rdacarrier" }
30
+ ]}
31
+ ]
32
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "description": "Fix: Add missing 33X fields using cat language (040$b) is 'swe'.",
3
+ "comment": "Also fix LDR/09 '#' to 'a', and modify field 040",
4
+ "enabled": true,
5
+ "only": false,
6
+ "fix": true
7
+ }
@@ -0,0 +1,20 @@
1
+ {
2
+ "leader": "12345cam 22123454i 4500",
3
+ "fields": [
4
+ { "tag": "001", "value": "12345"},
5
+ { "tag": "003", "value": "(FOOBAR)"},
6
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [
7
+ { "code": "a", "value": "FI-A" },
8
+ { "code": "b", "value": "swe" },
9
+ { "code": "c", "value": "FI-C" },
10
+ { "code": "d", "value": "FI-D" },
11
+ { "code": "e", "value": "i" }
12
+ ]},
13
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [
14
+ { "code": "a", "value": "123 sivua" }
15
+ ]},
16
+ { "tag": "790", "ind1": " ", "ind2": " ", "subfields": [
17
+ { "code": "a", "value": "Drop me!" }
18
+ ]}
19
+ ]
20
+ }
@@ -0,0 +1,29 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cam a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "008", "value": "121212s2000 fi abcd f 000 1 fin "},
6
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [
7
+ { "code": "b", "value": "mul" },
8
+ { "code": "e", "value": "rda" }
9
+ ]},
10
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [
11
+ { "code": "a", "value": "123 sivua" }
12
+ ]},
13
+ { "tag": "336", "ind1": " ", "ind2": " ", "subfields": [
14
+ { "code": "a", "value": "taktiili teksti" },
15
+ { "code": "b", "value": "tct" },
16
+ { "code": "2", "value": "rdacontent" }
17
+ ]},
18
+ { "tag": "337", "ind1": " ", "ind2": " ", "subfields": [
19
+ { "code": "a", "value": "käytettävissä ilman laitetta" },
20
+ { "code": "b", "value": "n" },
21
+ { "code": "2", "value": "rdamedia" }
22
+ ]},
23
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
24
+ { "code": "a", "value": "nide" },
25
+ { "code": "b", "value": "nc" },
26
+ { "code": "2", "value": "rdacarrier" }
27
+ ]}
28
+ ]
29
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "description": "Fix: Cyrillux, BK: add fields 336, 337 and 338.",
3
+ "comment": "Also fix LDR/18 to 'i', and add field 040.",
4
+ "enabled": true,
5
+ "only": false,
6
+ "fix": true
7
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "leader": "12345cam a22123454j 4500",
3
+ "fields": [
4
+ { "tag": "008", "value": "121212s2000 fi abcd f 000 1 fin "},
5
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [
6
+ { "code": "a", "value": "123 sivua" }
7
+ ]}
8
+ ]
9
+ }
@@ -0,0 +1,34 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cmm a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "008", "value": "012345s7890 fi |||| q g fin |"},
6
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [
7
+ { "code": "b", "value": "mul" },
8
+ { "code": "e", "value": "rda" }
9
+ ]},
10
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [
11
+ { "code": "a", "value": "1 CD-ROM-skiva" }
12
+ ]},
13
+ { "tag": "336", "ind1": " ", "ind2": " ", "subfields": [
14
+ { "code": "a", "value": "kaksiulotteinen liikkuva kuva" },
15
+ { "code": "b", "value": "tdi" },
16
+ { "code": "2", "value": "rdacontent" }
17
+ ]},
18
+ { "tag": "336", "ind1": " ", "ind2": " ", "subfields": [
19
+ { "code": "a", "value": "tietokoneohjelma" },
20
+ { "code": "b", "value": "cop" },
21
+ { "code": "2", "value": "rdacontent" }
22
+ ]},
23
+ { "tag": "337", "ind1": " ", "ind2": " ", "subfields": [
24
+ { "code": "a", "value": "tietokonekäyttöinen" },
25
+ { "code": "b", "value": "c" },
26
+ { "code": "2", "value": "rdamedia" }
27
+ ]},
28
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
29
+ { "code": "a", "value": "tietolevy" },
30
+ { "code": "b", "value": "cd" },
31
+ { "code": "2", "value": "rdacarrier" }
32
+ ]}
33
+ ]
34
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "description": "Fix: Add missing 33X fields for a computer (LDR/06=m) game (008/26=g).",
3
+ "comment": "Also apply Cyrillux specific fix for LDR/17, and modify 040.",
4
+ "enabled": true,
5
+ "only": false,
6
+ "fix": true
7
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "leader": "12345cmm a22123458i 4500",
3
+ "fields": [
4
+ { "tag": "008", "value": "012345s7890 fi |||| q g fin |"},
5
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [
6
+ { "code": "b", "value": "swe" }
7
+ ]},
8
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [
9
+ { "code": "a", "value": "1 CD-ROM-skiva" }
10
+ ]}
11
+ ]
12
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cam a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "008", "value": "012345s7890 fi |||| a g fin |"},
6
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [
7
+ { "code": "b", "value": "mul" },
8
+ { "code": "e", "value": "rda" }
9
+ ]},
10
+ { "tag": "336", "ind1": " ", "ind2": " ", "subfields": [
11
+ { "code": "a", "value": "teksti" },
12
+ { "code": "b", "value": "txt" },
13
+ { "code": "2", "value": "rdacontent" }
14
+ ]},
15
+ { "tag": "337", "ind1": " ", "ind2": " ", "subfields": [
16
+ { "code": "a", "value": "mikromuoto" },
17
+ { "code": "b", "value": "h" },
18
+ { "code": "2", "value": "rdamedia" }
19
+ ]},
20
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
21
+ { "code": "a", "value": "mikrofilmirulla" },
22
+ { "code": "b", "value": "hj" },
23
+ { "code": "2", "value": "rdacarrier" }
24
+ ]}
25
+ ]
26
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "description": "Fix: Add missing 33X fields for a microfilm",
3
+ "comment #1": "336$b txt is an educated guess/fallback",
4
+ "comment #2": "008/23=a means microfilm 337$b=h. No 300 nor 007, so we emprirically default to 338$b hj",
5
+ "enabled": true,
6
+ "only": false,
7
+ "fix": true
8
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "leader": "12345cam a22123454i 4500",
3
+ "fields": [
4
+ { "tag": "008", "value": "012345s7890 fi |||| a g fin |"}
5
+ ]
6
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cjm a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "008", "value": "012345s7890 fi |||| fin |"},
6
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [
7
+ { "code": "b", "value": "mul" },
8
+ { "code": "e", "value": "rda" }
9
+ ]},
10
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [{ "code": "a", "value": "2 äänilevyä" }]},
11
+ { "tag": "336", "ind1": " ", "ind2": " ", "subfields": [
12
+ { "code": "a", "value": "esitetty musiikki" },
13
+ { "code": "b", "value": "prm" },
14
+ { "code": "2", "value": "rdacontent" }
15
+ ]},
16
+ { "tag": "337", "ind1": " ", "ind2": " ", "subfields": [
17
+ { "code": "a", "value": "audio" },
18
+ { "code": "b", "value": "s" },
19
+ { "code": "2", "value": "rdamedia" }
20
+ ]},
21
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
22
+ { "code": "a", "value": "äänilevy" },
23
+ { "code": "b", "value": "sd" },
24
+ { "code": "2", "value": "rdacarrier" }
25
+ ]}
26
+ ]
27
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "description": "Fix: Add missing 33X fields for music",
3
+ "comment": "LDR/06=j triggers 336$b=prm and 337$b=s, 300 is both translated and used for 338$b sf",
4
+ "enabled": true,
5
+ "only": false,
6
+ "fix": true
7
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "leader": "12345cjm a22123454i 4500",
3
+ "fields": [
4
+ { "tag": "008", "value": "012345s7890 fi |||| fin |"},
5
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [{ "code": "b", "value": "mul" }, { "code": "e", "value": "i" } ]},
6
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [{ "code": "a", "value": "2 audio discs" }]}
7
+ ]
8
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "_validationOptions": {},
3
+ "leader": "12345cjm a22123454i 4500",
4
+ "fields": [
5
+ { "tag": "008", "value": "012345s7890 fi |||| fin |"},
6
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [
7
+ { "code": "b", "value": "mul" },
8
+ { "code": "e", "value": "rda" }
9
+ ]},
10
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [{ "code": "a", "value": "2 äänilevyä" }]},
11
+ { "tag": "336", "ind1": " ", "ind2": " ", "subfields": [
12
+ { "code": "a", "value": "esitetty musiikki" },
13
+ { "code": "b", "value": "prm" },
14
+ { "code": "2", "value": "rdacontent" }
15
+ ]},
16
+ { "tag": "337", "ind1": " ", "ind2": " ", "subfields": [
17
+ { "code": "a", "value": "audio" },
18
+ { "code": "b", "value": "s" },
19
+ { "code": "2", "value": "rdamedia" }
20
+ ]},
21
+ { "tag": "338", "ind1": " ", "ind2": " ", "subfields": [
22
+ { "code": "a", "value": "äänilevy" },
23
+ { "code": "b", "value": "sd" },
24
+ { "code": "2", "value": "rdacarrier" }
25
+ ]}
26
+ ]
27
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "description": "Fix: Add missing 33X fields for music",
3
+ "comment": "LDR/06=j triggers 336$b=prm and 337$b=s, 300 is both translated and used for 338$b sf",
4
+ "enabled": true,
5
+ "only": false,
6
+ "fix": true
7
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "leader": "12345cjm a22123454i 4500",
3
+ "fields": [
4
+ { "tag": "008", "value": "012345s7890 fi |||| fin |"},
5
+ { "tag": "040", "ind1": " ", "ind2": " ", "subfields": [{ "code": "b", "value": "mul" }, { "code": "e", "value": "i" } ]},
6
+ { "tag": "300", "ind1": " ", "ind2": " ", "subfields": [{ "code": "a", "value": "2 audio discs" }]}
7
+ ]
8
+ }