Could you possibly replace the bad bytes with their NCR values, and raise a warning? -Tim On Wed, Nov 20, 2013 at 9:32 AM, Jon Stroop <[log in to unmask]> wrote: > Coming from nowhere on this...is there a place where it would be > convenient to flag which behavior the user (of the library) wants? I think > you're correct that most of the time you'd just want to blow through it (or > replace it), but for the situation where this isn't the case, I think the > Right Thing to do is raise the exception. I don't think you would want to > bury it in some assumption made internal to the library unless that > assumption can be turned off. > > -Jon > > > > On 11/19/2013 07:51 PM, Jonathan Rochkind wrote: > >> ruby-marc users, a question. >> >> I am working on some Marc8 to UTF-8 conversion for ruby-marc. >> >> Sometimes, what appears to be an illegal byte will appear in the Marc8 >> input, and it can not be converted to UTF8. >> >> The software will support two alternatives when this happens: 1) Raising >> an exception. 2) Replacing the illegal byte with a replacement char and/or >> omitting it. >> >> I feel like most of the time, users are going to want #2. I know that's >> what I'm going to want nearly all the time. >> >> Yet, still, I am feeling uncertain whether that should be the default. >> Which should be the default behavior, #1 or #2? If most people most of the >> time are going to want #2 (is this true?), then should that be the default >> behavior? Or should #1 still be the default behavior, because by default >> bad input should raise, not be silently recovered from, even though most >> people most of the time won't want that, heh. >> >> Jonathan >> >