Publicatie:Collectiedata normaliseren met Open Refine

Uit Cultureel Erfgoed Standaardentoolbox
Ga naar: navigatie, zoeken


Samenvatting

Deze pagina is een work-in-progress. Hier komt een overzicht van formules en GREL-expressions waarmee men data in Open Refine kan normaliseren en verrijken.


Referentie
Titel Collectiedata normaliseren met Open Refine (Voorkeurstitel)
Locatie
Uitgever
Jaar van uitgave 2016
Rechten CC-BY-SA
Persistent ID


Auteur(s)

  • Alina Saenko (PACKED)

Status

Deze pagina is een work-in-progress. Hier komt een overzicht van formules en GREL-expressions waarmee men data in Open Refine kan normaliseren en verrijken.


Bestand:20150430 Adlibgebruikersgroep openrefine V0 6.pdf
Bestand:20150430 Handout Open Refine workshop.pdf
Bestand:20160525 import Open refine naar Adlib.docx


Data cleaning

https://programminghistorian.org/lessons/fetch-and-parse-data-with-openrefine

Normalisering en verrijking



Werkende Reconciliation services voor Open Refine, opgesteld door PACKED:


'http://api.geonames.org/countryCode?lat=' + cells["lat"].value + '&lng=' + cells["lng"].value + '&username=alinasaenko'

Export

Test templating Export uit Open Refine voor Adlib


GREL functies

Parsing Wikidata JSON

1. Haal ahv Q-nummers de volledige Wikidata-record in json binnen: bij de kolom met Q-nummers kies ‘add colomn by fetching URL' met GREL
"https://www.wikidata.org/wiki/Special:EntityData/" + value + ".json?"

2. Haal de Engelstalige wikipedia link uit de json-record: bij de kolom met de json-record kies ‘add colomn based on this colomn’ met GREL
value.replace(/\{"entities":\{"Q\d+?":/, '').parseJson().sitelinks.enwiki.url

3. Haal de Wikimedia Commons category uit de json-record: bij de kolom met de json-record kies ‘add colomn based on this colomn’ met GREL
value.replace(/\{"entities":\{"Q\d+?":/, '').parseJson().sitelinks.commonswiki.url

4. Haal de link naar het beeld op Wikimedia Commons uit de json-record in drie stappen:

  • bij de kolom met de json-record kies ‘add colomn based on this colomn’, geef die een naam met GREL

value.replace(/\{"entities":\{"Q\d+?":/, '').parseJson().claims.P18

  • value.replace('[', '').parseJson().mainsnak.datavalue.value
  • 'https://commons.wikimedia.org/wiki/File:' + value.replace(' ','_')

Moet nog uitgetest worden: (For the sake of completeness, here is an alternative method using Python/Jython :)

import json

data = json.loads(value)

for id, element in data['entities'].items(): return element['sitelinks']['enwiki']['url']

Other

cell.cross('groeninge data csv', 'workPid').cells['objectNumber'].value[0]
cells["wp"].value
value.replace(/\\/,"")
cells["PID"].value + ";" + cells["pid2"].value

Contactgegevens


Alina Saenko
PACKED vzw
Delaunoystraat 58 #23, 1080 Brussel
E: alina@packed.be
T: ++32 (0)2 217 14 05