Att tillgängliggöra data i maskinläsbara format är något som omnämns i allt fler artiklar kopplat till öppen data för att det ska vara lätt att bearbetas och användas av maskiner. Bland annat finns det lagförslag från regering om att förenkla kollektivtrafikresande genom öppna maskinläsbara format, samt att vi har debatterat ämnet i artikel om ändamålsenlig öppna data. Vad som oftast inte nämns är betydelsen av metadata för att maskinläsbart dataformat ska komma till användning. Därför vill vi bidra med vårt perspektiv och ge exempel på varför detta är viktigt.
Alla digitala filer är maskinläsbara eftersom de skapats av maskiner. Men det är en stor skillnad om filerna är ämnade att läsas av människor eller av maskiner. Maskinläsbara data innebära att data är väl strukturerat i ett standardiserat format så att maskiner kan utläsa betydelsen och bearbeta innehållet utan manuell handpåläggning. För att maskiner ska förstå innebörden behöver formatet innehålla metadata för att beskriva egenskaper, klasser och attribut. Om inte formatet stöder eller innehåller metadata, finns det risk att maskinen kan feltolka data. Exempelvis kan maskiner inte gissa om ett decimaltal är ett geografisk referens eller ett belopp i en ekonomisk kalkyl. För grundläggande förståelse om metadata och betydelse av dataformat läs tidtagare artikel.
Maskiner kan än så länge inte förstå den semantiska betydelsen och kontext på samma sätt som en människa. Till exempel är det svårt för en maskinen att tolka en Excel-fil som refererar till en anställds personliga utlägg för mars månad 2016, eftersom filformatet inte har stöd för metadata. För att en maskin ska förstå innebörden av klasser och attribut behövs det metadata som beskriver deras egenskaper. Data behöver innehålla metadata för att förklara exempelvis personliga utlägg, där objektet anställd är en instans av klassen ”personal”, utlägg är en instans av klassen ”skuld till anställd”, som i sin tur ärver egenskaper av klassen ”skuld”, som kan kopplas till klasserna ”resultatenhet”, ”månad”, och ”år”. Dataformat som XML och JSON kan beskriva sådana relationer mellan klasser via metadataschema som är en naturlig del av formaten.
Maskinläsbart format i öppen data kontext enligt vår definition är; dataformat som är lämpade för resurssnål databehandling med möjligheter att definiera objekt, attribut och hierarkier så att maskiner kan tolka innehåll och kontext utan manuell handpåläggning. Det innebär att dataformat som enkelt kan bearbetas digitalt, som exempelvis kommaseparerade filer (CSV), inte kan anses som ett maskinläsbart format. Eftersom formatet saknar möjligheter att definiera metadata som beskriva objekt och attribut. Däremot är kommaseparerade filer resurssnålt och lämpligt format för behandling av data i tabellform där kontext och innehåll redan äv välkänt.
We analysed more than 20,000 links to CSV files on data.gov.uk – only around one third turned out to be machine-readable. – A case study of CSVs on data.gov.uk
Om man utför jobbet med att tvätta och korrigera data inför publicering, är den extra ansträngningen att formatera data till exempelvis XML eller JSON inte så stor. Förutsatt att man har ordning på sin interna metadata. Anledningen till att välja maskinläsbara format med stöd för metadata är möjligheten för maskiner att tolka och sammanföra data från olika datakällor i andra länder som nyttjar standardiserade taxonomier för attribut, klasser och hierarkier. Exempel på taxonomi är Datex, som är en europeisk standardisering av trafik och transport data.
Tabellen visar på vanliga format och stöd för metadata.
Format | Metadata stöd | Beskrivning |
---|---|---|
ZIP (komprimerad fil) | Inget | Inget stöd för metadata. |
CSV (kommaseparerad fil) | Inget | Inget stöd för metadata, första raden kan innehålla namn på kolumn |
Begränsat | Metadata om skapare och datum. | |
Kalkylark (Excel) | Begränsat | Metadata om skapare, datum, format och datatyper. För att extrahera metadata behövs specialprogram eller moduler. Metadata är inte en naturlig del och formatet är proprietärt |
JPG, PNG | Fullgott | Metadata om skapare, datum, licensregler, geografisk plats, samt kamerainställningar med mera |
JSON, XML | Fulländat | Metadata strukturer för beskrivning av, ägare, datum, tidszoner, komplexa datatyper och validering av tillåtna värden. Formaten innehåller metadataschema för beskrivning av taxonomier som innehåller objekt och hierarkier |