1.41 Wed Sept 21 17:49:00 CDT 2005 [THINGS THAT MAY BREAK YOUR CODE] - updated DATA to incorporate MARC update 5 (Oct. 2004) - check_245( $field ) updated: - Makes sure $a exists (and is first subfield). - Warns if last character of field is not a period -- Follows LCRI 1.0C, Nov. 2003 rather than MARC21 rule - Verifies that $c is preceded by / (space-/) - Verifies that initials in $c are not spaced - Verifies that $b is preceded by :;= (space-colon, space-semicolon, space-equals) - Verifies that $h is not preceded by space unless it is dash-space - Verifies that data of $h is enclosed in square brackets - Verifies that $n is preceded by . (period) -- As part of that, looks for no-space period, or dash-space-period (for replaced elipses) - Verifies that $p is preceded by , (no-space-comma) when following $n and . (period) when following other subfields. - Performs rudimentary check of 245 2nd indicator vs. 1st word of 245$a (for manual verification). This could use some reworking, and was developed based on a predominantly English collection. Uses the internal _check_article( $field ) method. - added _check_article( $field ) internal method for comparing nonfiling indicator against first word of title field - added check245.t to test the new check_245 functionality - updated lint.t to use File::Spec for path to camel.usmarc - removed updir usage so 'make test' works properly [ENHANCEMENTS] - added check for subfield delimiters in fields lower than 010 - updated lint.t and camel.usmarc with a test for this new code - added check_020( $field ): - uses Business::ISBN to validate 020$a and 020$z ISBNs. The current version needs work for ISBN-13 checking. Uses an internal sub, _isbn13_check_digit($ean) to validate 13 digit ISBNs, based on code in Business::ISBN. Checking of subfield z needs work (it is currently written for nonstandard practice). - added check020.t to test the new check_020 method - added check_041( $field ): - warns if subfields are not evenly divisible by 3 unless second indicator is 7 (future implementation would ensure that each subfield is exactly 3 characters unless ind2 is 7--since subfields are now repeatable. This is not implemented here due to the large number of records needing to be corrected.). - validates against the MARC Code List for Languages (L) using the MARC::Lint::CodeData data pack - added check_043( $field ) - warns if each subfield a is not exactly 7 characters. - validates each code against the MARC code list for Geographic Areas (L) using the MARC::Lint::CodeData data pack - added check041043.t to test the new check_041 and check_043 methods - check_record() now accepts any isa( 'MARC::Record' ). - _check_article() no longer trips a Perl warning if an indicator has a non-numeric value. - _check_article() updated with exceptions for 'a posteriori' and 'a priori' -Replaced indenting tabs with 4 spaces -marclint utility updated to report errors encountered while translating raw MARC records into MARC::Record objects. 1.40 Mon Dec 20 14:01:53 CST 2004 - added DATA for tags 001-008 - updated DATA to incorporate update 4 (Oct. 2003) - corrected errors in the DATA section 1.39 Thu Dec 16 20:25:41 CST 2004 - initial baseline release after separation from MARC::Record proper