It turns out Leif was right on in his description of a bug when reading MARC data from disk. If a record had an invalid indicator in position 1 MARC::File::USMARC would convert indicator 1 to a blank, *and* it would also convert a possibly valid indicator in position 2 to blank as well. Thanks Leif.
This has been fixed in CVS, and will go out with the next version of MARC::Record. By the way, if you want to get the latest version of MARC::Record before it has hit CPAN you can always pull it directly from CVS: % cvs -d:pserver:[EMAIL PROTECTED]:/cvsroot/marcpm login % cvs -z3 -d:pserver:[EMAIL PROTECTED]:/cvsroot/marcpm co marc-record Instructions at http://sourceforge.net/cvs/?group_id=1254 //Ed