.
Datamodel og match i DanBib og bibliotek.dk

af Paul B. Jensen, Netdivisionen, Dansk BiblioteksCenterDer har altid i Danbibs godt 10-årige levetid været stor opmærksomhed omkring matchningen af poster, forståeligt nok eftersom dobbeltposter alt andet lige forringer funktionaliteten – giver dårligere overblik og risiko for uhensigtsmæssige bestillinger.

Den første datamodel i DanBib byggede på det princip, at når 2 eller flere poster matchede, blev de grundlæggende bibliografiske data (den såkaldte titelpost) fjernet fra dubletposterne, sådan at kun én af posterne blev bevaret i fuldt omfang. Det betød, at det i princippet var umuligt at adskille poster, der én gang var matchet, og man valgte bl.a. derfor at begrænse matchingen til poster med ISBN eller ISSN, hvor hovedtitlen for en sikkerheds skyld også skulle være ens.

Med etableringen af bibliotek.dk for 4 år siden – byggende på (en delmængde af) de samme poster, den samme datamodel og de samme matchprogrammer som DanBib – blev dobbeltpostproblemet ikke mindre påtrængende.

Samtidig blev datamodellen imidlertid ændret, således at der nu ikke længere bliver slettet data i matchede poster. Matchen er med andre ord blevet rent virtuel og medfører ikke fysisk sammenfletning af posterne. Derved er det blevet muligt at lave en langt mere fleksibel matchning, hvor der en plads til at eksperimentere sig frem.
Det er nu muligt med jævne mellemrum at foretage hele eller delvise ommatchninger, efterhånden som algoritmerne bliver forbedret. Det skal dog bemærkes, at totale omkørsler realistisk set maksimalt kan foretages én gang årligt, da det driftsmæssigt er en meget krævende procedure.

Den umiddelbart største gevinst i forhold til den gamle matchning er, at alle materialetyper nu forsøges matchet – også poster uden ISBN/ISSN, d.v.s. ældre bøger og ikke-boglige materialer.

Hvordan foregår matchningen i dag ?

Den konkrete procedure kan beskrives som flg.:

Når en post bliver lagt ind i DanBib/bibliotek.dk, udtrækkes nogle få helt elementære nøgledata. Disse data sammenlignes med tilsvarende nøgledata fra eksisterende poster i basen. Herved identificeres de poster, som der overhovedet er en chance for, at den nye post matcher med.
Disse poster sammenlignes nu nærmere én ad gangen med den nye post. Hvis én af dem matcher, undersøges om evt. andre poster i samme klynge også alle sammen matcher med den nye post. Hvis det er tilfældet, lægges den nye post ind i klyngen. Hvis det ikke er tilfældet, fortsætter programmet med at undersøge eventuelle andre matchkandidater.

Den egentlige matchundersøgelse er altid en sammenligning mellem 2 konkrete poster.

Den algoritme der bruges, skal forstås som en række specifikke regler, hver bestående af et større eller mindre antal betingelser, der skal være opfyldt. En mere omfattende gennemgang af reglerne kan ses på DanBib’s nye dokumentations-hjemmeside http://www.danbib.dk/index.php?doc=match. I det følgende er omtalt nogle eksempler og hovedprincipper.

Eksempler på matchregler

Bøger med ISBN kan stadig matche efter den gamle regel:

Regel-eksempel 1:

  • Titel skal være
  • ISBN skal være ens

Der skal være mindst ét sammenfaldende ISBN i de 2 poster, og titlerne skal være ens.
Hvis én af posterne eller begge poster er uden ISBN, kan denne regel bruges:

Regel-eksempel 2:

  • ISBN skal være ens eller mangle
  • Titel skal være ens
  • Forfatter skal være ens
  • År skal være ens
  • Udgave skal være ens eller mangle
  • Serie skal være ens eller mangle
  • Sondringsdata skal være ens eller mangle
  • Undertitel skal være ens eller mangle
  • Sprogkode skal være ens eller mangle
  • Forlag skal være ens eller mangle

Alle betingelser skal være opfyldt.

Det ser lidt voldsomt ud, men er ikke helt så svært at opfylde, som man måske umiddelbart skulle tro. Der er en række formildende omstændigheder.
For det første betyder de mange ‘ens eller mangle’-betingelser, at den pågældende oplysning godt må mangle i én af posterne (eller selvfølgelig også i begge poster).
Endvidere sker der en ‘normalisering’ af det indhold, der sammenlignes, d.v.s. alle mellemrum, skilletegn o.l. ignoreres, og forskelle m.h.t. store og små bogstaver er uden betydning.
Endelig er der specielle regler vedr. de enkelte felter, der kraftigt forøger muligheden for match, f.eks.:

  • det er nok, at ét forfatternavn (efternavn + 1. bogstav i fornavn) er ens i de 2 poster.
  • udgavebetegnelsen bliver forsøgt tolket i en forenklet og standardiseret form.
  • forlag: kun de 5 første bogstaver sammenlignes

(Flere specialregler er beskrevet på ovennævnte hjemmeside).

Hvis de 2 ‘kandidater’ alligevel ikke opfylder reglen, leder programmet videre efter en anden regelvariant, der måske passer bedre. Et eksempel på en sådan variant er:

Regel-eksempel 3:

  • ISBN skal være ens eller mangle
  • Titel skal være ens
  • Forfatter skal være ens
  • År skal være ens
  • Udgave skal være ens eller mangle
  • Serie skal være ens eller mangle
  • Sondringsdata skal være ens eller mangle
  • Undertitel skal være ens eller mangle
  • Sprogkode skal være ens eller mangle
  • Forlag skal være indeholdt

Alle betingelser skal være opfyldt

Den eneste forskel fra eksempel 2 er, at forlagsbetingelsen er ændret. I stedet for at kræve at forlagsnavnet skal være ens i de 2 poster (de 5 første tegn), kræves der nu, at forlagsnavnet i den ene post skal være indeholdt som tekststreng i forlagsnavnet i den anden post.

Virkningen af disse 2 regler kan illustreres med følgende eksempel fra det virkelige liv:

(1) Bupl & SL
(2) Rapport finansieret af Udviklings- og forskningsfonden, BUPL & SL
(3) [s.n.]
(4) Bupl & SL
(5) [s.n.]

Eksemplet viser forlagsangivelsen i 5 forskellige katalogiseringer af samme bog (Ida Schwartz: Sparring).
Disse poster er matchet på trods af den ret forskellige angivelse (de øvrige matchbetingelser er naturligvis også overholdt).
(1) og (2) og (4) matcher på betingelsen ‘indeholdt’.
Forlagsangivelsen ‘[s.n.]’ bliver af programmet fortolket som at forlagsangivelsen mangler.
(3) og (5) matcher derfor de øvrige på betingelsen ‘ens eller mangler’.

Matchningen af denne titel er imidlertid ikke lykkedes helt. Der er 2 poster, der er faldet udenfor og har dannet en klynge for sig selv:

(6) SLs og BUPLs Forsknings- og udviklingsfond
(7) [s.n.]

(6) matcher ikke (1), (2) og (4), men den matcher jo (3) og (5), og hvorfor er (7) også faldet udenfor?
Dette har at gøre med den meget vigtige regel, at alle poster i en klynge skal matche hinanden indbyrdes. Hvis vi forestiller os, at nummereringen også angiver den rækkefølge, posterne er lagt ind i, er forløbet flg:
De 5 første matcher pænt. Post 6 matcher post 3 (og 5), men den videre undersøgelse afslører, at den ikke matcher alle poster i klyngen, og derfor danner den sin egen nye klynge.
Da post 7 ankommer, har den så at sige 2 klynger at vælge imellem. Hvilken klynge den vælger er i princippet tilfældigt.

Eksemplet illustrerer det problem, at en enkelt mangelfuld eller afvigende katalogisering kan adskille 2 andre poster der matcher fuldstændig. Dette er som oftest årsagen til ‘uforklarlige’ dobbeltposter, hvor de poster, der bliver vist i DanBib, er så godt som identiske. Forklaringen ligger i den eller de poster, der ligger nedenunder, og som kun kan ses i format ‘marc’ efterfulgt af ’se alle poster i klyngen’ .

Af generelle matchproblemer vedr. andre materialetyper og kategorier kan nævnes:

Periodica

Periodicaposter er ofte meget kortfattede. Der er således ganske mange katalogiseringer, der mangler enhver form for ophavsindentifikation i form af forfatter-/udgiveroplysninger eller forlag, og som heller ikke har ISSN. Disse ‘anonyme’ titler kan godt matche indbyrdes, men ikke med de mere fyldige katalogiseringer.

Musik og AV

I modsætning til hvad tilfældet er med boglige materialer, har vi ikke på dette område ment, at det er forsvarligt at matche materialer uden et eller andet identificerende nummer (bestillingsnr, editionsnummer, pladenummer el.lign). Dertil er der for mange forskellige versioner, indspilninger o.s.v. af samme værk, som bestemt ikke skal matches.

Netdokumenter

En måske lidt naivt forsøg på at matche netdokumenter udelukkende på identisk URL måtte i hast opgives, da vi konstaterede eksempler på flere hundrede dokumenter med samme (overordnede) URL. Derfor indgår dokumentets titel også i matchningen.

Flerbindsværker

Helt generelt matcher vi ikke på tværs af materialetyper, bibliografisk kategori, eller bibliografisk posttype/niveau. Der er således ikke mulighed for at matche flerbindsværker formateret efter henholdsvis ét- og flerniveau-metoden.
Katalogiseringer efter ét-niveau-metoden søges matchet indbyrdes efter de almindelige regler for det pågældende materiale.
Matchning af poster formateret efter flerniveau-metoden er altid formelt set en matchning af bindposter, hvor oplysninger fra hovedposterne dog naturligvis også indgår i sammenligningen.

Det videre arbejde

Der foregår som antydet ovenfor et løbende arbejde for at videreudvikle match-algoritmerne. Alle eksempler på manglende eller forkert matchning, der bliver rapporteret, eller som vi selv finder, fører i princippet til overvejelser om mulige forbedringer, hvilket så fører til jævnlige konkrete justeringer og nye regelvarianter. Disse kan godt indføres løbende med virkning for nye eller omkørte poster, men skal ændringer for alvor slå igennem, skal der i nogle tilfælde en totalomkørsel til, og det vil som nævnt højst ske en gang om året. Vi regner med, at gennemføre næste totalomkørsel i løbet af efteråret 2004.
Ved næste omkørsel forventer vi endvidere at implementere nogle ændringer i matchprogrammets mere overordnede virkemåde. Når en ny post kan matche flere klynger, er det som ovenfor nævnt tilfældigt, hvad for en det bliver. I den nye programversion vil eventuelle klynger med en nationalbibliografisk post blive foretrukket i sådanne situationer.
Vi forventer også, at det i den nye programversion bliver lettere at ommatche enkeltposter ved simpelthen at sende dem ind igen. I den nuværende version involverer dette ofte sletning og genfremsendelse af alle poster i en klynge.

Alle disse foranstaltninger med nye mere eller mindre opfindsomme matchregel-varianter o.s.v. kan ikke skjule, at en stor del at matchproblemerne bunder i fejl og mangler i posterne. Derfor vil det videre arbejde bl.a. gå ud på at aftale rettelser og genleveringer af poster med enkeltbiblioteker. I første omgang vil vi især koncentrere os om periodicaområdet, hvor der, som nævnt ovenfor, er mange poster, der mangler matchrelevante oplysninger (specielt ISSN og/eller forlag). Dette arbejde er allerede godt i gang og vil fortsætte i den kommende tid.

Endelig kan det enkelte bibliotek selvfølgelig som hidtil hjælpe til med den løbende forbedring af matchningen af egne poster ved 1) genbrug fra DanBib og 2) korrektur på katalogiseringer – med særlig opmærksomhed omkring de felter, der matches på.
Dette sidste punkt har denne artikel og den omtalte nye dokumentations-hjemmeside måske gjort det lidt nemmere at forholde sig til.