Dan, I have seen something similar recently. We (at the University of Virginia) were starting to see records containing the � character. I wrote a simple script to take a list of records containing that character, and extract the OCLC number, and then programatically perform a look-up for that OCLC number in WorldCAT via z39.50 The script would then compare our record with the one retrieved from OCLC and replace the fields containing the � character with the corresponding field from the record from OCLC. For the most part this was working, but in several cases the record retrieved from OCLC contained the � character. It is not merely an encoding/translation error since multiple different characters have been replaced with that character. Moreover, in some of the records returned there are some fields that contain correct accent marks while other fields that seemingly ought to contain the same accent mark, the accent mark has the � character substituted in instead. One example shown below is the record for OCLC number 682540414 (ISBN 9782760521292) Additionally, I used both my marc4j- based z39.50 libraries and the local copy of yaz-client to retrieve the exact record you used as an example. The binary form of the record was identical for both methods of retrieving the record. And there were no instances of the � character in the display of the record. (shown even further below) --Robert Haschart University of Virginia Library LEADER 03689cam a2200769Mi 4500 001 ocn682540414 003 OCoLC 005 20221102142039.0 008 101122s1996 quc o 000 0 fre d 006 m o d 007 cr |n|---||||| 040 $aEBLCP$beng$epn$cEBLCP$dOCLCQ$dAUW$dOCLCO$dP@U$dOCLCF$dOCLCO$dOCLCQ$dCNKUC$dFVL$dOCLCQ$dOCLCA$dOCLCQ$dOCLCO$dOCLCQ$dJSTOR$dOCLCQ$dOCLCO$dQGK$dOCLCO$dOCL 066 $cZsym 016 $z96940719X 019 $a1259108319 020 $a9782760521292 020 $a276052129X 020 $a1441600825 020 $a9781441600820 035 $a(OCoLC)682540414$z(OCoLC)1259108319 037 $a22573/ctv18n0fbx$bJSTOR 050 4$aHD938 072 7$aBUS$x043000$2bisacsh 082 04$a338.4/791 100 1 $aLaplante, Marc. 245 12$aL'expérience touristique contemporaine :$bFondements sociaux et culturels. 260 $aQuébec :$bPresses de l''niversite du Quebec,$c1996. 300 $a1 online resource (204 pages) 336 $atext$btxt$2rdacontent 337 $acomputer$bc$2rdamedia 338 $aonline resource$bcr$2rdacarrier 490 1 $aCollection Tourisme 505 0 $aTable des matières; Liste des tableaux; Liste des figures; Introduction; Partie 1_L'enracinement du tourisme dans la socioté moderne; Chapitre 1_Touriste et tourisme d'hier et d'aujourd'hui; Chapitre 2_Sociétés et cultures de l'Occident industrialisé; Partie 2_Les dimensions de la culture touristique actuelle; Chapitre 3_L'expérience touristique comme expérience culturelle; Chapitre 4_La culture touristique personnelle; Chapitre 5_La culture touristique institutionnalisée; Conclusion; Guide bibliographique. 520 $aPour comprendre le tourisme comme fait social et culturel typique des sociétés postindustrielles, ce livre présente d'abord les principaux rapports entre tourisme et société puis élabore le concept de culture touristique. 588 0 $aPrint version record. 504 $aComprend des réf. bibliogr. 546 $aFrench. 650 0$aTourism and the arts. 650 0$aTourism$xSocial aspects. 650 0$aTourism. 650 0$aCulture. 650 0$aHeritage tourism. 650 6$aCulture$xAspect sociologique. 650 6$aTourisme culturel. 650 6$aTourisme$xAspect social. 650 6$aTourisme. 650 6$aTourisme et arts. 650 7$acultural tourism.$2aat 650 7$atourism.$2aat 650 7$aBUSINESS & ECONOMICS$xMarketing$xGeneral.$2bisacsh 650 7$aHeritage tourism.$2fast$0(OCoLC)fst00955465 650 7$aCulture.$2fast$0(OCoLC)fst00885059 650 7$aTourism.$2fast$0(OCoLC)fst01153142 650 7$aTourism and the arts.$2fast$0(OCoLC)fst01153221 650 7$aTourism$xSocial aspects.$2fast$0(OCoLC)fst01153202 655 4$aElectronic books. 776 08$iPrint version:$aLaplante, Marc.$tExpérience touristique contemporaine : Fondements sociaux et culturels.$dQuébec : Presses de l''niversite du Quebec, ©1996$z9782760509108 830 0$aTourisme (Presses de l'Université du Québec) 856 40$3desLibris$uhttps://www.deslibris.ca/ID/422431 856 40$3Project MUSE$uhttps://muse.jhu.edu/books/9782760521292 856 40$3ProQuest Ebook Central$uhttps://public.ebookcentral.proquest.com/choice/publicfullrecord.aspx?p=600242 856 40$3JSTOR$uhttps://www.jstor.org/stable/10.2307/j.ctv18pgzcc 880 0$6830-00/Zsym$aCollection Tourisme (Presses de l'Universit�e du Qu�ebec) 938 $aProQuest Ebook Central$bEBLB$nEBL600242 938 $aProject MUSE$bMUSE$nmuse20945 994 $aZ0$bVA@ 948 $hHELD BY VA@ - 86 OTHER HOLDINGS LEADER 02823cam a2200721 a 4500 001 ocn276644602 003 OCoLC 005 20221102144112.0 008 081121s2008 quca b 000 p eng 040 $aNLC$beng$cNLC$dCDX$dBWX$dSUC$dUKMGB$dOCLCF$dNLC$dOCLCA$dREB$dOCLCA$dOCLCQ$dOCLCO 015 $a20089424808E$2can 015 $a20089424808$2can 016 $a(AMICUS)000034543125 016 7 $a015299625$2Uk 020 $a9782920325241$q(Galerie de l'UQAM) 020 $a2920325248 020 $a9782980985249$q(Galerie Simon Blais) 020 $a2980985244 035 $a(OCoLC)276644602 041 0 $aeng$afre 043 $an-cn-qu 050 4$aN6549.G686$bA4 2008 055 02$aNB249* 055 3$aN6549 G686$bA4 2009 082 04$a730.92$222 084 $acci1icc$2lacc 100 1 $aDéry, Louise,$d1955- 245 10$aRêver le nouveau monde :$bune œuvre d'art public de Michel Goulet offerte par la ville de Montréal à la ville de Québec dans le cadre des célébrations du 400e anniversaire de sa fondation /$ctextes, Louise Déry et Michel Goulet. 246 1 $iAdded title page in English:$aDreaming a new world 260 $a[Montréal] :$bGalerie Simon Blais,$c2008. 300 $a69 pages :$billustrations (some color) ;$c20 cm 336 $atext$btxt$2rdacontent 337 $aunmediated$bn$2rdamedia 338 $avolume$bnc$2rdacarrier 500 $aIncludes poems. 500 $aTranslation: Donald Pistolesi. 504 $aIncludes bibliographical references (pages 68-69). 546 $aText in French and English. 550 $aCo-published by: City of Montréal and Galerie de l'UQAM. 600 10$aGoulet, Michel,$d1944- 650 0$aPublic art$zQuébec (Province)$zQuébec. 650 0$aSculpture, French-Canadian$zQuébec (Province)$y21st century. 650 5$aSculpture, French Canadian$zQuébec (Province)$y21st century. 650 6$aSculpture québécoise$y21e siècle. 600 17$aGoulet, Michel,$d1944-$2fast$0(OCoLC)fst00070599 650 7$aPublic art.$2fast$0(OCoLC)fst01082064 650 7$aSculpture, French-Canadian.$2fast$0(OCoLC)fst01895320 651 7$aQuébec.$2fast$0(OCoLC)fst01207316 651 7$aQuébec$zQuébec.$2fast$0(OCoLC)fst01206798 648 7$a2000-2099$2fast 700 1 $aGoulet, Michel,$d1944- 710 2 $aGalerie de l'UQAM. 710 2 $aGalerie Simon Blais. 710 1 $aMontréal (Québec) 856 42$3French equivalent / Équivalent français$uhttps://bac-lac.on.worldcat.org/oclc/276644605 938 $aCoutts Information Services$bCOUT$n9265731 029 0 $aNLC$b000034543125 029 0 $aNLC$b20089424808E 029 1 $aBWX$bR3781137 029 1 $aCDX$b9265731 029 1 $aUKMGB$b015299625 994 $aZ0$bVA@ 948 $hNO HOLDINGS IN VA@ - 21 OTHER HOLDINGS ________________________________ From: Code for Libraries <[log in to unmask]> on behalf of Dan Scott <[log in to unmask]> Sent: Tuesday, November 1, 2022 11:32 AM To: [log in to unmask] <[log in to unmask]> Subject: [CODE4LIB] Connecting to OCLC WorldCat Z39.50 servers: character encoding issues Hello: I'm wondering if anyone else has run into this situation with OCLC WorldCat Z39.50 servers. When we search Voilà (Canada's national union catalogue, built on WorldCat) <https://library-archives.canada.ca/eng/collection/basics/pages/voila.aspx> via Z39.50 for a record that is catalogued in French for ILL purposes, the resulting records contain corrupted characters where accented characters are expected. We're seeing this in Ex Libris Alma, where Voilà is an external search source maintained by Alma (we can't see the parameters Alma is using to connect). For example, searching Voilà for ISBN 9782920325241 returns a list of records for which the summaries display without accents. However, checking the MARC record itself shows that where there should be accents, there are instead literals in place of Unicode codepoints. The 245 for the first record returned for ISBN 9782920325241 appears as follows in Alma: 245 1 0 $$a R<U+00fd>ever le nouveau monde : $$b une <U+00fd>uvre d'art public de Michel Goulet offerte par la ville de Montr<U+00fd>eal <U+00fd>a la ville de Qu<U+00fd>ebec dans le cadre des c<U+00fd>el<U+00fd>ebrations du 400e anniversaire de sa fondation / $$c textes, Louise D<U+00fd>ery et Michel Goulet. - Where we see R<U+00fd>ever, we should see Rèver. - Where we see <U+00fd>uvre, we should see œuvre. - Where we see Montr<U+00fd>eal, we should see Montréal. - Where we see <U+00fd>a, we should see à. I don't *think *this is an example of a Unicode canonicalization into a normalized form using combining characters, as <U+00fd> is not a combining character. If that was the case, we would see <U+0301>e for é, <U+0300>a for à, etc. Instead, it looks like a case of corruption introduced by incorrect decoding. This can occur when the Z39.50 source uses UTF8 and the client interprets it as MARC8, or vice versa. That said, I have tested a few different approaches to querying Voilà using the yaz-client command line Z39.50 client (version 5.28.0 on Ubuntu), and it seems that Voilà itself might be returning the corrupted characters. For example, when I set the negotiation character set to MARC-8 (matching the LDR[09] of the returned record) and the display character set to UTF-8, the results on the screen and in the file show corruption: $ yaz-client -m testvoila.mrc Z> negcharset MARC-8 Character set negotiation : MARC-8 Z> charset Negotiation character set `MARC-8' Records in charset yes Charneg version 3 Display character set is `UTF-8' MARC character set is `none' Query character set is `none' Z> authentication USERNAME/PASSWORD Authentication set to Open (USERNAME/PASSWORD) Z> open fsz3950.oclc.org:210/gclacConnecting...OK. Sent initrequest. Connection accepted by v3 target. UserInformationfield: { OID: 1 2 840 10003 10 1000 17 1 { ANY (len=66) } } OCLC UserInformation: { motd 'You are searching the FirstSearch 5.0 Z39.50 Server!' dblist { 'laccat' } } Options: search present delSet triggerResourceCtrl scan sort extendedServices namedResultSets Elapsed: 0.167063 Z> find @attr 1=7 9782920325241 Sent searchRequest. Received SearchResponse. Search was a success. Number of hits: 6, setno 1 records returned: 0 Elapsed: 0.190875 Z> show Sent presentRequest (1+1). Records: 1 [laccat] Record type: USmarc 02802cam 2200685 a 4500 008 20081121s2008 quca b 000 p eng 015 $a 20089424808E $2 can 015 $a 20089424808 $2 can 016 $a (AMICUS)000034543125 016 7 $a 015299625 $2 Uk 020 $a 9782920325241 $q (Galerie de l'UQAM) 020 $a 2920325248 020 $a 9782980985249 $q (Galerie Simon Blais) 020 $a 2980985244 040 $a NLC $b eng $c NLC $d CDX $d BWX $d SUC $d UKMGB $d OCLCF $d NLC $d OCLCA $d REB $d OCLCA $d OCLCQ $d OCLCO 041 0 $a eng $a fre 043 $a n-cn-qu 050 4 $a N6549.G686 $b A4 2008 055 02 $a NB249* 055 3 $a N6549 G686 $b A4 2009 082 04 $a 730.92 $2 22 084 $a cci1icc $2 lacc 100 1 $a D�ery, Louise, $d 1955- 245 10 $a R�ever le nouveau monde : $b une �uvre d'art public de Michel Goulet offerte par la ville de Montr�eal �a la ville de Qu�ebec dans le cadre des c�el�ebrations du 400e anniversaire de sa fondation / $c textes, Louise D�ery et Michel Goulet. In the file with the downloaded record (looking at it with Vim in binary mode) you can see the same <fd> characters as we see in Alma for the same record: 02802cam 2200685 a 4500008004300000015002200043015002100065016002500086016001800111020003900129020001500168020004100183020001500224040008500239041001300324043001200337050002400349055001100373055002400384082001500408084001800423100002600441245024000467246005500707260004700762300005200809336002600861337002800887338002700915500002000942500003500962504005500997546003201052550006201084600002701146600003301173648002001206650004501226650006601271650006601337650004101403650002201444650003801466651001301504651002201517700002701539710002301566710002501589710002401614856009401638938004701732945000801779947003001787948014101817948003801958948004701996948002902043948003202072949001202104^^20081121s2008 quca b 000 p eng ^^ ^_a20089424808E^_2can^^ ^_a20089424808^_2can^^ ^_a(AMICUS)000034543125^^7 ^_a015299625^_2Uk^^ ^_a9782920325241^_q(Galerie de l'UQAM)^^ ^_a2920325248^^ ^_a9782980985249^_q(Galerie Simon Blais)^^ ^_a2980985244^^ ^_aNLC^_beng^_cNLC^_dCDX^_dBWX^_dSUC^_dUKMGB^_dOCLCF^_dNLC^_dOCLCA^_dREB^_dOCLCA^_dOCLCQ^_dOCLCO^^0 ^_aeng^_afre^^ ^_an-cn-qu^^ 4^_aN6549.G686^_bA4 2008^^02^_aNB249*^^ 3^_aN6549 G686^_bA4 2009^^04^_a730.92^_222^^ ^_acci1icc^_2lacc^^1 ^_aD<fd>ery, Louise,^_d1955-^^10^_aR<fd>ever le nouveau monde :^_bune <fd>uvre d'art public de Michel Goulet offerte par la ville de Montr<fd>eal <fd>a la ville de Qu<fd>ebec dans le cadre des c<fd>el<fd>ebrations du 400e anniversaire de sa fondation /^_ctextes, Louise D<fd>ery et Michel Goulet. If anyone has run into this with OCLC WorldCat Z39.50 and figured out a solution, I would love to hear it. It would even be helpful to know if you have a connection to an OCLC WorldCat Z39.50 server and aren't seeing these kinds of problems. I know most of you probably won't have authentication credentials for Voilà, but the setup has to be the same for other OCLC WorldCat Z39.50 servers... right? In Z39.50 and character encoding madness, I remain, Dan