Module updates for MARC error checking
[email protected] (Bryan Baldus)
| Newsgroups | perl.perl4lib |
|---|---|
| Message-ID | <a06110400c2076abbbcfe@[4.254.84.215]> |
I have posted new versions of MARC::Errorchecks (to CPAN and my home page [1]), MARC::Lint::CodeData (included in Errorchecks, my home page, and most recent version will be available in CVS on SourceForge, as part of MARC::Lint), and MARC::Lintadditions (at my home page only, since I would eventually like to move these checks into MARC::Lint). I have also posted a new version of LCSHchangesparserpl110.txt (to the inprocess directory of my home page). The script is used to parse a text version of LC's weekly new and changed headings Web pages to leave a tab-delimited text file of headings that have changed. Following LC's recent website redesign, the script currently complains about the first lines of the input files, but it seems to do a reasonably good job of creating the list of changed headings. A question: Both MARC::Lint and MARC::Errorchecks in CPAN include a copy of MARC::Lint::CodeData. Should I update MARC::Lint to version 1.43 with the only change being the inclusion of the new version 1.14 of CodeData? I have posted a new module, MARC::Lint::Lint_Authority.pm. This will be a module essentially copying MARC::Lint, but with a data section and methods for validating MARC format for Authority data rather than Bibliographic. An initial version of this module appears in the inprocess directory. I have not done much testing, but what little I have done seems to successfully do basic lint validation. A description of the changes for the modules and the script appears below. [1] My home page <http://home.inwave.com/eija> Errorchecks.pm: Version 1.12: Updated July 5-Nov. 17, 2006. Released Feb. 25, 2007. -Updated check_bk008_vs_300($record) to look for extra p. or v. after parenthetical qualifier. -Updated check_bk008_vs_300($record) to look for missing period after 'col' in subfield 'b'. -Replaced $field-tag() with $tag in error message reporting in check_nonpunctendingfields($record). -Turned off 50-field limit check in check_fieldlength($record). -Updated parse008vs300b($illcodes, $field300subb) to look for /map[ \,s]/ rather than just 'map' when 008 is coded 'b'. -Updated check_bk008_vs_bibrefandindex($record) to look for spacing on each side of parenthetical pagination. -Updated check_internal_spaces($record) to report 10 characters on either side of each set of multiple internal spaces. -Uncommented level-5 and level-7 leader values as acceptable. Level-3 is still commented out, but could be uncommented for libraries that allow it. -Includes version 1.14 of MARC::Lint::CodeData. MARC::Lint::CodeData.pm: Versions 1.09 to 1.14: Updated June 26, 2006-Jan. 8, 2007. -Added new source codes from Technical Notice of Jan. 5, 2007. -Added new source codes from Technical Notice of Nov. 14, 2006. -Added new source code from Technical Notice of Oct. 19, 2006. -Added new source codes from Technical Notice of Oct. 17, 2006. -Added new source codes from Technical Notice of Aug. 29, 2006. -Added new source codes from Technical Notice of June 23, 2006. Lintadditions.pm: Version 1.11: Updated June 12, 2006-Feb. 7, 2007. Released Feb. 25, 2007. -updated check_130(), check_6xx, and check_7xx to check for proper punctuation before subfield _l. -Updated check_240() to allow ? and ! before subfield _l, based on LCRI revision in 2006. -Updated check_050() to report error if subfield _a doesn't start with capital letters followed by digits. -Updated check_050() to report error if subfield _a ends in capital letter. -Replaced $field->tag() in warning statements with $tagno. -Revised $2 validation to split on '/', thus ignoring edition and language additions on valid codes -Updated check_440 to look for miscoded 2nd ind. using MARC::Lint::_check_article(). -Updated 130, 240, 630, 730, and 830 checks to look for article, using MARC::Lint::_check_article(). -Updated check_042() with source code from technical notice of Sept. 29, 2006. -Added TO DO item for determining whether check_130, 630, and 730 can use the same code. Script updates: LCSHchangesparserpl110.txt Version 1.10: Updated Dec. 7, 2006 -Revised parsing to allow ! within heading (e.g., !Xu) Version 1.09: Updated Sept. 8, 2006 -Misc. fixes, including: --Closing up spaces in 682 fields --Parsing of new 1xx with [proposed update] Version 1.08: Updated Sept. 4, 2006 -Reports filename of files containing AC headings (new or changed) in AC headings section. New Module in process: MARC::Lint::Lint_Authority.pm -Initial version, Feb. 21, 2007. ################## Please let me know of any problems or suggestions for improvement for any of the above. Thank you, Bryan Baldus [email protected] [email protected] http://home.inwave.com/eija