Importformatet, version 1.6 [sv]

KulturNavs interna importformat utgörs av en avgränsad ASCII-fil i formatet UTF-8. Importfilerna kan för närvarande läsas in i KulturNav av en systemadministratör. Egenskaperna - fältnamnen - finns beskrivna i schemat.

Definitioner och data

Importfiler innehåller information radvis. Det finns två radtyper, definitionsrad och datarad. En definitionsrad specificerar vilka egenskaper som skall tilldelas värden och en datarad innehåller värden att tilldela enligt den senaste definitionsraden. Det kan finnas flera datarader efter en definitionsrad, varje skapar eller uppdaterar en post.

Det kan också finnas flera definitionsrader, om det följer en definitionsrad efter en eller flera datarader gäller dessa definitioner fortsättningsvis, för kommande datarader tills det kommer ytterligare en definitionsrad.


Avgränsare, definitionsrad

>>

>>+

>> Definition av egenskaper, inleder en definitionsrad/. Exempel:

">>EntityTypeName||entity.dataset||..."  

Om definitionsraden inleds med >> kommer värde på efterföljande datarader för flervärda egenskaper att ersätta befintligt värde. Om definitonsraden inleds med >>+ kommer värde för flervärda egenkaper att läggas till.


||

|| Egenskapsavgränsare. Exempel:

"...||entity.dataset||..."  



Avgränsare, datarad

||

|| Egenskapsavgränsare. Exempel:

"...||Ett värde||Ett annat värde||..."


@@

@@ Avgränsare för språkkod. Exempel:

"...||sv@@Domare||..."  



##

## Avgränsare av språk. Exempel:

"...||no@@Dommer##sv@@Domare||..."  



;;

;; Avgränsare för flera värden av samma egenskap (flervärda egenskaper). Exempel (egenskapen concept.exactMatch):

"...||http://rdvocab.info/roles/judgeWork;;http://dbpedia.org/ontology/Judge||..."  



!!

!! Avgränsare för status för en egenskap som används för att importera förslag till ändringar. Statusvärden: Draft (förslag till nytt värde) och DraftDelete (förslag till att ta bort ett värde). Ett förslag ska innehålla status, användarare (i form av en uuid) som lägger förslaget samt källa/kommentar (sträng utan språkindikator):

">>EntityTypeName||extData.appliesTo||entity.sameAs||superconcept.seeAlso||draft.source  
Draft||cfb0a370-e0dc-4fae-86e1-dfe5558b0c61||http://viaf.org/71370901!!Draft;;http://wikidata.org/entity/Q4941990!!Draft||https://en.wikipedia.org/wiki/Sickan_Carlsson!!Draft;;https://sv.wikipedia.org/wiki/Sickan_Carlsson!!Draft||Matchningsförsök mot viaf.com"  



Inline-element (nästlade poster)

Inline-element är sammansatta värden, egenskaper som representeras som en nästlad post. Ett exempel är Webb-referens, superconcept.webReference, som har två underegenskaper, webReference.url (för webbadressen) och webReference.linkText (för titel på länken).

Nivåangivelse

Inline-element kan nästlas i flera nivåer, därför måste vissa avgränsare ha en särskild form så att importfunktionen kan avgöra på vilken nivå i nästlingen som data befinner. Nivån anges med ett tal mella avgränsartecknen. Exempel:

"...|1|..."  

för fältavgränsning för första nivån av nästling.


&&

&& Avgränsare mellan inline-egenskaper och inline-värden. Ett inline-element måste ha en definition, motsvarande definitionsrad på toppnivån. Exempel (egenskapen superconcept.webReference):

"...||webReference.linkText|1|webReference.url&&en@@Wikipedia|1|http://en.wikipedia.org/wiki/Judge||..."  

Observera fältavgränsningen med |1| för inline-elementet.

Om inline-elementet i sin tur har nästlade element måste && ha nivåangivelse. T.ex. för en födelsehändelse, person.birth:

"event.time|1|event.dateComment|1|event.placeReference|1|event.source&&1950-Y|1|sv@@Datumkommentar|1|placeReference.place|2|placeReference.specification&1&615c2bc7-de1d-4ada-ac53-65978eb83d6a|2|sv@@Platsspecifikation|1|sv@@Källa"  



$null

$null används om du explicit vill skicka in ett tomt värde i ett fält i importfilen, exempelvis för att kunna skicka in kompletta strukturer som inte innehåller data i alla fält. Null-värdet ignoreras via importen.

I exemplet nedan har platsspecifikation ett nullvärde:

"event.time|1|event.dateComment|1|event.placeReference|1|event.source&&1950-Y|1|sv@@Datumkommentar|1|placeReference.place|2|placeReference.specification&1&615c2bc7-de1d-4ada-ac53-65978eb83d6a|2|$null|1|sv@@Källa"  



Filexempel

Tre termer i ett dataset:

>>EntityTypeName||entity.dataset||entity.name||concept.exactMatch||superconcept.webReference
Concept||23c7080c-6752-4691-8c8a-ce0d65623c51||no@@Jurist##sv@@Jurist||http://rdvocab.info/roles/judgeWork;;http://dbpedia.org/ontology/Judge||webReference.linkText|1|webReference.url&&en@@Wikipedia|1|http://en.wikipedia.org/wiki/Lawyer
Concept||23c7080c-6752-4691-8c8a-ce0d65623c51||no@@Dommer##sv@@Domare||http://rdvocab.info/roles/judgeWork;;http://dbpedia.org/ontology/Judge||webReference.linkText|1|webReference.url&&en@@Wikipedia|1|http://en.wikipedia.org/wiki/Judge
Concept||23c7080c-6752-4691-8c8a-ce0d65623c51||no@@Ambassadør##sv@@Ambassadör||http://dbpedia.org/ontology/Ambassador||webReference.linkText|1|webReference.url&&en@@Wikipedia|1|http://en.wikipedia.org/wiki/Ambassador

En händelse - byggt - till ett fartyg:

>>uuid||navalVessel.built
b8919f49-fde0-4632-922e-69e10c217a5b||event.timespan|1|event.dateComment|1|event.placeReference&& timespan.start|2|timespan.end&1&1898|2|1901|1|placeReference.placeString&1&sv@@Orust

Lägg till samma som länkar till några poster:

>>+uuid||entity.sameAs
5860eec1-6655-4bba-99d5-63424817a87b||http://www.wikidata.org/entity/Q691362
6860ec6a-bb5c-42ad-8525-4fad5ae48587||http://www.wikidata.org/entity/Q190944;;https://libris.kb.se/nl036s06025rf47
94726a01-0264-4ec5-94f8-ec74ba00b7ce||https://www.wikidata.org/entity/Q21513394;;http://viaf.org/viaf/106832961

Lägg till poster i en mapp:

>>uuid||list.member
be93d08e-6d40-4f87-b840-b42ecc29ae17||b3d0b95b-a3d9-4b09-9431-d7607ee220f2;;dfb0f369-33ca-40c9-bd09-b95a89295fca
[sv]