Oh dear! What a convoluted process! It's incredible! OK, the e in the Bibliotheque is "grave". So does this mean that all I need is to change the acute to grave and x62 to x61? I will test it out and let you know, thanks Ed!
--Jackie On Wed, 5 Jan 2005, Ed Summers wrote: > On Tue, Jan 04, 2005 at 02:20:55PM -0500, Jackie Shieh wrote: > > MARC::Field->new('710','2','', a=>'Bibliotheque nationale de france.') > > ^ > > I'm assuming that you want a combining acute on the e, and that you want to > encode with MARC-8 since UTF-8 in MARC data hasn't hit the mainstream yet... > eventhough I've heard OCLC is converting all their MARC data to UTF-8. > > This is kind of a pain, but here's how you could do it. You need to > escape to ExtendedLatin, add the combining acute, escape back to > BasicLatin, and then put the 'e'. Or in code: > > # building blocks for escaping G0 to ExtendedLatin and > # back to BasicLatin, details at: > # http://www.loc.gov/marc/specifications/speccharmarc8.html > $escapeToExtendedLatin = chr(0x1B).chr(0x28).chr(0x21).chr(0x45); > $escapeToBasicLatin = chr(0x1B).chr(0x28).chr(0x52); > > # acute in the G0 register is chr(0x62) from the table at: > # http://lcweb2.loc.gov/cocoon/codetables/45.html > $acute = $escapeToExtendedLatin.chr(0x62).$escapeToBasicLatin; > > # now make the field > $field = MARC::Field->new( '710', '2', '', > a => 'Biblioth'.$acute.'eque nationale de france.' ); > > This is long because I wanted to explain what was going on...I imagine > it could be compressed nicely...maybe > > Please give this a try on one record and make sure your catalog displays > it properly before doing anything drastic to your data. Like I needed > to mention that :-) > > //Ed >