OpenRefine

**OpenRefine**, entiseltä nimeltään **Google Refine** ja sitä ennen **Freebase Gridworks**, on itsenäinen avoimen lähdekoodin työpöytäsovellus tiedon siivoamiseen ja muuntamiseen muihin muotoihin. Se toimii vastaavalla tavalla kuin taulukkolaskentasovellukset (ja voi työstää taulukkolaskennan tiedostomuotoja). Se kuitenkin käyttäytyy enemmän kuin tietokanta.

## Ohjelmiston toimintaperiaate

OpenRefine käsittelee *tietorivejä*, joissa on soluja *sarakkeissa*, samaan tapaan kuin relaatiotietokantojen taulukoissa. OpenRefinessa projekti koostuu yhdestä taulukosta. Käyttäjä voi suodattaa näytettäviä rivejä käyttämällä *fasetteja*, jotka määrittävät suodatuskriteerit (esimerkiksi näyttää rivit, jossa tietty sarake ei ole tyhjä). Toisin kuin taulukkolaskennassa, useimmat toiminnot OpenRefinessa tehdään kaikille suodatettuna oleville riveille: tietyssä sarakkeessa olevan tiedon muokkaus, uuden sarakkeen luominen perustuen olemassa olevan sarakkeen tietoihin, jne. Kaikki datasetissä tehdyt toimet tallennetaan ohjelmaan ja ne voidaan toistaa toiselle datasetille.

Toisin kuin taulukkolaskennassa, kaavoja ei tallenneta soluihin, vaan muuntaminen kaavalla tehdään kerran ja kaava tallennetaan myöhempää käyttöä varten. Muuntamislausekkeet voidaan kirjoittaa **General Refine Expression Language (GREL)** -kielellä, Jythonilla (eli Python) ja Clojurella.

Ohjelmalla on web-käyttöliittymä. Se ei kuitenkaan ole verkossa isännöity (SAAS), vaan sen voi ladata vapaasti ja asentaa paikallisesti. Kun OpenRefine käynnistetään, se käynnistää web-palvelimen ja selainkäyttöliittymän, jolla palvelinta hyödynnetään.

## Ohjelmiston mahdollisia käyttötapoja

* *Sotkuisen datan siivous*: jos työstää esimerkiksi tekstitiedostoa, jossa on semi-strukturoitua dataa, sitä voidaan muokata käyttämällä muunnoksia, fasetteja ja klusterointia, jotta tiedot saadaan siististi jäsennellyksi.
* *Tietojen muuntaminen*: arvojen muuntaminen muihin muotoihin, normalisointi ja denormalisointi.
* *Tietojen jäsentäminen web-sivustoilta*: OpenRefinessa on ominaisuus URL:n noutamiseksi, jsoup-HTML-jäsennin ja DOM-moottori.
* *Datasetin rikastaminen hakemalla lisätietoa verkkopalveluista* (eli jsonin palauttaminen). Sitä voidaan käyttää esimerkiksi osoitteiden geokoodaamiseen maantieteellisiksi koordinaateiksi.
* *[[Wikidata|Tietojen yhdistäminen Wikidataan]]* (perustuu vastaavaan Freebaselle kehitettyyn lisäosaan). Keskeisenä tässä on *rekonsiliaatio* — vastaavien kohteiden löytäminen Wikidatasta datasetissä oleville tekstimuotoisille arvoille.

## Tuettuja tuonnin ja viennin tiedostomuotoja
**Tuonti** on tuettu seuraavissa muodoissa:

* TSV, CSV
* Tekstitiedosto, jossa on mukautettuja erottimia tai sarakkeet erotellaan kiinteän leveyden perusteella
* XML
* RDF-tripletit (RDF/XML ja Notation3 -serialisointiformaatit)
* JSON
* Google Sheets, Google Fusion Tables

Jos lähtötiedot ovat ei-standardissa tekstimuodossa, ne voidaan tuoda konaisina riveinä jakamatta sarakkeisiin, ja sarakkeet erotetaan myöhemmin OpenRefinen työkaluilla. Refine tukee arkistoituja ja pakattuja tiedostoja (.zip, .tar.gz, .tgz, .terva.bz2, .gz tai .bz2) ja se voi ladata lähtötiedostoja URL-osoitteesta.

**Vienti** on tuettu seuraavissa tiedostomuodoissa:

* TSV
* CSV
* Microsoft Excel
* HTML-taulukko
* Vienti mallinemoottorilla. On mahdollista määritellä malline tietojen tulostamiseen esimerkiksi MediaWiki-taulukoksi.

OpenRefine -projektin voi viedä .tar.gz arkistona.

## Historia
OpenRefine oli alkujaan Metawebin kehittämä **Freebase Gridworks** ja se on ollut saatavilla avoimena lähdekoodina tammikuusta 2010 alkaen. Google osti Freebasen kehittäjän Metawebin 16. heinäkuuta 2010, ja nimesi Freebase Gridworksin Google Refineksi 10. marraskuuta 2010, julkistamalla samalla version 2.0. Alkuperäinen ohjelmoija David Huynh ilmoitti 2. lokakuuta 2012, että Google lopettaisi pian aktiivisen tukensa Google Refinelle. Siitä lähtien ohjelmistokoodi on ollut siirtymävaiheessa avoimen lähdekoodin projektiksi nimeltä OpenRefine.

## Lähteet

## Aiheesta muualla
* https://openrefine.org/
* Avoin koulutus: OpenRefine for Wikimedia Commons: the basics, julkaisija Wikimedia Foundation