DUO/ARTE aineiston tuonti

Collectiven asentaminen

takaisin

Aineiston siirtäminen järjestelmästä toiseen on aina ainutlaatuinen seikkailu. Tässä kerron Jyväskylän yliopiston kulttuuurihistoriallisella museolla käytössä olleen museotietojärjestelmän konversiosta CollectiveAccess -järjestelmään.

DUO

DUO -kokoelmanhallintajärjestelmä on ollut käytössä vuodesta 2003. Sovellus on ollut aikaansa edellä erityisesti siinä, että se on hyödyntänyt tietokantarelaatioita syötteiden normalisoinnissa. Toisin sanoen, monet asiat ovat olleet pudotusvalikoissa, joten harmillisia kirjoitusvirheistä johtuvia epätäsmällisyyksiä ei juurikaan ole.

Relaatioista johtuen DUO -järjestelmän tietorakenne on aika monimutkainen. Omia objektityyppejään DUO:ssa ovat kirjat, lehtileikkeet, tallenteet, kuvat ja esineet. Lisäksi dataan kuuluvat kokoelmat, lahjoitukset, diaariot, näyttelyt, tiedostolinkit ja säilytystilat.

Esineitä ja kuvia on yhteensä noin 80 000 ja henkilöitä ja organisaatioita noin 15000. Onneksi sain aineiston DUOn kehittäjältä CSV-muodossa, jotta en joutunut omilla SQL-kyselyillä kaivamaan tietoja. 

DUO csv-tiedostoina

Data itsessään oli hyvin siistiä johtuen pudotusvalikoista ja museon hyvistä käytänteistä. Datan laatu oli itseasiassa yllätys, sillä erilaisia käyttäjätunnuksia (siis DUOn käyttäjiä) oli yli 230. Ilmeisesti perehdytys tietokannan käyttöön on ollut perusteellista.

Importoitavan aineiston perusrakenne on seuraava: kappaleet.csv sisältää kaikille objektyypeille yhteiset kentät kuten yleisnimi, erikoisnimi ja kuvaus (ja monia muita). Esineiden, kirjojen ja muiden objektityyppien omat tiedot on omissa csv-tiedostoissa. Kappaleid -kenttä toimii avaimena eri tiedostoissa olevien tietojen välillä.

kappaleet.csv
kappaleid yleisnimi erikoisnimi kuvaus
10878 Äänilevy Seminaarinmäen mieslaulajat: Lepoasento Jyväskylän yliopiston OKL:n opiskelijoista koostuvan kuoron"Seminaarinmäen mieslaulajat" ensimmäinen LP-levy, nimeltään "Lepoasento".
10890 Aikakauslehti Tidskrift för folkskolan Aikakauslehti Tidskrift för folkskolan v.1908, 1911, 1929, 1930,1932 ja1933. Lehteä julkaisee Finlands almänna svenska folkskollärare- och lärarinneförening. Lehden aiheet liittyvät kouluoloihin, koulutyöhön ja kulttuuriin.

 

tallenteet.csv
kappaleid nauhoitustilanteenkuvaus haastateltavaidt kesto
10878 Äänitetty yliopiston vanhassa juhlasalissa 455 36
       

Koska importointi tehtiin aineistotyyppi kerrallaan, täytyi esimerkiksi tallenteiden yhteiset kentät hakea kappaleet -datasta importointia varten (lookup). Tämän jälkeen kunkin aineistotyypin data sisälsi kaikki kentät ja import voitiin tehdä ilman riipppuvuutta tallenteet -datasta.

Importoinnin vaiheet

asennusprofiili

Ensimmäinen vaihe liittyy asennusprofiilin tekemiseen. Asennusprofiilissa määritellään esimerkiksi mitä listoja (pudotusvalikoita) on olemassa ja mihin lomakkeisiin ja raportteihin ne kuuluvat. Meidän profiiliimme luotiin muun muassa seuraavat listat: kuntoluokat, yleisnimet, ammatit ja lehtien nimet.

Toinen asennusprofiiliin liittyvä tekijä on kohteiden välisten suhteiden määrittely. Esimerkiksi määritelläään millä tavalla henkilö voi olla linkitetty esineeseen. Meidän tapauksessamme erilaisia rooleja löytyi yli 80 kappaletta, joukossa esimerkiksi räätäli ja keksijä.

Työkalut

GLAMpipe -ohjelmistoon on testailun aikana kehitetty osia, joiden avulla tietoja voidaan mapata CollectiveAccesin tietorakenteisiin.

Ensimmäiseksi CSV-tiedostot ladattiin GLAMpipe-ohjelmistoon kukin tiedosto omaksi kokoelmakseen. Sitten aloitettiin aineiston muunnosten tekeminen, listojen muodostaminen ja tehtiin lookup, jolla tuotiin aineistojen yhteiset kentät aineiston sisään.

Datamuunnoksia

Joillekin tiedoille piti tehdä vähän muutoksia, jotta ne olisivat yhteensopivia CA:n kanssa. Ensinnäkin, päivämäärät piti muuttaa kk.pp.vvvv -muotoon. Tämä outous (kuukausi ensimmäisenä) koskee vain REST-rajapinnan yli tehtäviä tallennuksia. Lomakkeen kautta tallennettaessa voi käyttää eurooppalaista muotoa pp.kk.vvvv. CA ei myöskään hyväksy nollapäiviä tai nollakuukausia, joten 0.0.0  tai 0.0.1980 ei käy päivämääräksi.

Henkilöiden koskevien tekstien seassa oli myös linkkejä www-sivuihin, kuten Wikipedian artikkeleihin. Tässä näki verkkoviittaamisen nurjan puolen: hyvin moni muualle kuin Wikipediaan viittaava linkki oli jo rikki. Joka tapauksessa linkit piti ekstraktoida tekstin seasta, jotta ne voitiin sijoittaa omiin kenttiinsä CA:ssa.

Import

Varsinainen import alkaa listojen sisällön kasaamisella. Eli kun henkilöt.csv -tiedostosta otetaan kaikki yksilölliset arvot ammattisarakkeesta, saadaan sisältö ammatit -listaan. Tämä tieto ajetaan sitten CollectiveAccessin ammatit-listan sisällöksi. Tämä sama tehdään esineiden yleisnimille ja lehtileikkeiden lehtien nimille.

Seuraavaksi luodaan varsinaiset kohteet eli esineet, kuvat, henkilöt, haastattelut, kokoelmat ja niin edelleen. Olemassa olevat listat linkittyvät tässä vaiheessa luotaviin kohteisiin arvojensa perusteella. Tässä vaiheessa kohteita ei vielä linkitetä toisiinsa vaan importin jälkeen esineellä ei ole yhteyttä kokoelmaan tai tekijäänsä.

Viimeisessä vaiheessa kohteen linkitetään toisiinsa. Kun esimerkiksi henkilön tiedot viedään CA:n, niin vastauksena tulee henkilön CA-tunniste. Samoin tapahtuu kaikkien kohteiden kanssa eli esineet, kuvat ynnä muut saavat stunnisteen. Tämä on CollectiveAccessin sisäinen tunniste ja tätä tunnistetta käytetään kun henkilö linkitetään vaikkapa haastattelun tekijäksi tai esineen lahjoittajaksi.

Lopputulos

Vaikka DUO-import ei vielä aivan täydellinen olekaan, alkaa lopputulos näyttää jo aika hyvältä. Tuloksena on hyvin selailtava aineisto, joka hyödyntää CollectiveAccessin rakenteita täysimääräisesti.