Community på Sveriges dataportal
Analys Datakvalitet
-
Hej!
På senare tid har det uppkommit bättre förutsättningar för att nyttja Öppna Data:
- Dataportal - för att hitta data
- Specifikationer - för att ensa datamodellerna som beskriver samma sak
- APIer - för maskininläsning av data
Av den anledningen var jag intresserad av att titta på hur upplevelsen för en datakonsument ser ut idag. Det vill säga, hur enkelt är det för en part att integrera och konsumera datat; vilka eventuella hinder och svårigheter möter den utvecklare som avser att bygga en samhällsnyttig tjänst baserat på Öppna Data?
Studien är inte akademisk på något sätt utan enbart en enklare analys.
För studien behövdes ett lämpligt användningsfall och valet föll på datamängden Badplatser då:
- Den har en öppen specifikation
- Ett flertal dataproducenter har valt att publicera data enligt specifikationen
- Ett relativt stort antal olika publiceringar finns att finna via Dataportal.se
- Många av datakällorna är APIer som publicerar datat enligt JSON
I och med detta finns alltså förutsättningar för att hitta och samla in enhetligt data.
I Dataportalen hittade jag 20 publiceringar av Badplatser som kan hämtas via API på JSON-format och som enligt metadatat uppfyller specifikationen https://www.dataportal.se/specifications/badplatser/1.0
Nedan presenteras resultatet av integration mot dessa ovan nämnda resurser.
Den initiala upplevelsen var minst sagt nedslående då ingen av resurserna tillhandahöll data enligt utlovad specifikation.
Majoriteten av API-resurserna är baserade på något som benämns RowStore och verkar vara en del av produkten EntryScape från företaget MetaSolutions AB. All JSON-data från dessa resurser returneras som helt otypat data i konflikt med specifikationen.
Förklaring:
I specifikationen har varje datafält en typ definierad; t.ex. att ett namn är en sträng, en koordinat är ett decimaltal, ett tillstånd som är sant eller falskt är en boolean (true|false) o.s.v.{ "place_id": "1477-Hattarevik", //sträng "latitude": 58.787, //decimaltal "toilet": true //boolean }
Med otypat data så returneras samtliga datafält som godtyckliga strängar, ex:
{ "place_id": "1477-Hattarevik", //sträng "latitude": "58.787", //sträng "toilet": "true", //sträng }
Det är fortfarande läsbart för en människa men JSON-formaterat data är avsett för maskin och nu är datat fullkomligt oanvändbart eftersom samtliga datafält bara innehåller fritexter.
Det vore ju dock tråkigt att avbryta denna analys så här tidigt på grund av APIernas begränsningar. Därför bearbetade jag allt data och konverterade typerna för alla datafält enligt definitionerna i specifikationen för att komma vidare. Härmed kan vi nu titta på datakvaliteten för varje enskild datapost.
Av 156 insamlade och typkonverterade dataposter (badplatser) så visade det sig nu att endast 31 stycken av dessa innehöll korrekt data.
Med andra ord så är det 125 av 156 dataposter vars data inte kan tolkas, det kan t.ex. vara:
- Icke kompletta dataposter som förmodligen inte ens avser att beskriva en faktisk badplats, det är bara skräp.
- Datafält innehåller text-värden som inte går att typkonvertera till aktuell typ.
- Dataposter innehåller datafält med felaktiga namn, d.v.s. som inte matchar specifikationens obligatoriska datafält.
- O.s.v.
Även detta resultat är nedslående, att merparten av allt data har så dålig kvalitet att det inte alls är användbart.
För att sammanfatta denna analys och svara på dess frågeställning:
- Att hitta alla datakällor var relativt enkelt tack vare Dataportal.se. Det hade dock varit önskvärt om det gick att filtrera dataset på metadatafältet “Uppfyller” (ConformsTo) (om det redan går så hittade jag i alla fall inget stöd för det i sökfunktionen och inte heller någon dokumentation om hur det eventuellt kan göras).
- Att integrera mot ett stort antal olika datakällor är förstås något krångligt och tidsödande, men görbart.
- Att datakällorna inte returnerar korrekt formaterat data är katastrofalt ur ett integrationsperspektiv och förtar hela syftet med ett API.
- Att dataposterna har så extremt dålig datakvalitet gör att användningen av detta Öppna Data är omöjlig.
Upplevelsen för mig som integratör mot dessa resurser var onekligen mycket dålig. Hindren var många och ofta oöverstigliga. Möjligheterna att samla in enhetligt data för vidare förädling och eventuell utveckling av nya tjänster är dessvärre obefintliga.
Metadatakatalog och specifikationer i alla ära, men med undermåliga gränssnitt och ingen kontroll på datakvalitet så innebär dessa publiceringar av Öppna Data tyvärr enbart kostnader och tillför inget som helst, eller högst begränsat, faktiskt värde.
Med vänlig hälsning, Magnus
-
@Magnus tack för din analys. 🤩
Jag har under flera år försökt konsumera diverse datamängder från ett antal myndigheter.
Tyvärr är min bild samstämmande med din på tvären av all öppen data från offentliga organisationer med få undantag.
Tex SCB där det av någon anledning är mycket bra ordning på allt.Jag har funderat nyligen på att göra en egen portal och låta en AI och individer recensera öppna datamängder för att få ett bättre överblick. Det skulle då också gå att söka utifrån utgivare och teman så man enkelt hittar det man söker.
Dataportalen som digg driver har många brister och är nästintill värdelös eftersom den likt bolagsverkets årsrapporter inte har någon som helst granskning av kvalitet, möjlighet att flagga värdelösa poster för granskning/borttagning eller möjlighet för konsumenten att recensera en post.
Resultatet är en massa brus.
Den undermåliga sökfunktionen gör portalen nästintill värdelös när det gäller findability så det samlede resultatet är att datakonsumenter nog ger upp och söker sin data på annat håll tex genom att kontakta berörd myndighet direkt istället.
Om du vill bygga en app med badplatser så är mitt förslag att titta på Wikidata och Openstreetmap och kombinera det med Lantmäteriet topo50.
Då får du täckning på gissningsvis 80-90% av landets badplatser.
Sen kan du konsumera datan om badvatten kvalitet från HaV också.Utmaningen är att matcha ihop alla dessa och presentera det hela på ett vettigt sätt för användaren så de enkelt hittar och får en bra badupplevelse.
Integration med Google maps är kanske också möjligt men om deras recensioner går att läsa från en api vet jag ej.
Lycka till!
-
Intressant och beklagligt. Jag hoppas att de som ansvarar för dataspecifikationen för badplatser och för dataportalens funktioner för att hitta data, kontaktar er för att höra mer om problemen och behoven i syfte att hitta lösningar för dessa.
-
@Magnus sa i Analys Datakvalitet:
merparten av allt data har så dålig kvalitet att det inte alls är användbart
Mycket bra analys, den sätter fingret på en problematik i hur digitaliseringen drivs tycker jag.
Problemen med datakvaliteten har också påtalats här på forumet tidigare av andra användare, tyvärr vad jag har erfarit utan respons eller åtgärder från DIGG eller styrande myndigheter/regeringskansli.
Det stora problemet i dagsläget är att det saknas ansvarstagande för datakvalitet och struktur för vidarenyttjande, och vad det verkar också insikt eller engagemang i hur väsentligt detta är.
Fokus verkar nästan uteslutande ligga på att uppfylla EU-direktiv på en administrativ och juridisk nivå, samtidigt som det saknas en praktisk erfarenhet av och förståelse för vad som behövs för att uppnå den faktiska nyttan och effektiviteten när man delar, konsumerar och integrerar data.
Följden är ett enormt slöseri med tid och energi både för den konsument som vill nyttja datan, och vad gäller insamlande och publicering av data som visar sig ha föga användbarhet i praktiken.
Jag hoppas att någon på en nivå där man har möjlighet att påverka myndigheternas styrning och organisation kan ta tag i detta inom en snar framtid.
-
Hej Magnus! Som du säger så är det stora problem med datakvaliteten och interoperabla data, och att det dessutom finns för lite data såklart. Ett av dom stora utmaningarna är, som du säkert vet, att det är svårt att få nationella aktörer att ta ansvar för en specifikation så att tex alla kommuner vet hur dom ska dela datamängden. Just specifikationen för badplatser är framtagen av projektet Nationell dataverkstad (som drivs av Västra Götalandsregionen), som har prioriterat att ta fram ett antal specifikationer, bara för att få igång arbetet. Men en spec kan ju inte ägas av ett tidsbegränsat projekt i det långa loppet. Anledningarna till bristen på specifikationer med ett hållbart "ägande" är att många myndigheter säger sig inte ha ett uppdrag att ansvara för detta, eller tidsbrist, eller att man inte ser behovet. Det ser lite olika ut. Vi gör vårt bästa för att pusha för frågan, men det är ett stort arbete och lite svårjobbat. Vi har inga mandat på Digg för att kräva att man ska ta ansvar för en spec.
API-frågorna kan jag inte svara på... men däremot på frågorna/feedbacken på dataportalen. Just nu så utvecklar vi sökfunktionen så att man ska kunna söka ut datamängder som följer en specifikation (conforms to). Plus att vi också håller på och utvecklar organisationssidor på Sveriges dataportal (det blir en helt ny sökfunktion) där man kommer att få en översikt över organisationens delade data, t.ex. hur många som har ett API, följer en spec, är värdefulla datamängder, och delar öppna data eller skyddade data med villkor/begränsningar. På organisationssidan kommer vi även att visa upp vilka specifikationer som organisationen delar, samt terminologier med begrepp. Vi kommer att börja rulla ut det här innan jul, och fortsätta arbetet efter årsskiftet. Vi hoppas att det här ska öka medvetenheten om vikten av ordentliga specifikationer som ägs och förvaltas med en långsiktig plan. Förhoppningsvis kommer även den nya interoperabilitetsförordningen och den kommande (nya) digitaliseringsstrategin (som beräknas komma nästa år) göra att det blir mer fokus på dom här frågorna. Då kanske även frågan om fördelen med att publicera nationella datamängder, snarare än att vi ska få 290 datamängder från alla kommuner, kommer upp på bordet.
Det var en väldigt intressant analys som jag tror många skulle behöva läsa.