Hopp til hovudinnhald

Hente data via OAI-PMH

Slik verkar det

OAI-PMH-endepunktet leverer uttrekket som ei liste med postar. Kvar post skildrar éin ressurs, til dømes eitt datasett eller eitt omgrep, avhengig av kva uttrekk du hentar. Store lister blir delte opp i fleire sider. Kvar gong du opnar ei adresse får du ei side med inntil 50 postar. Neste side hentar du ved å endre adressa. Kvar side, bortsett frå den siste, sluttar med ein fortsetjingsnøkkel (resumptionToken) som du brukar for å hente neste side.

Steg 1: Vel uttrekk

Finn ID-en for uttrekket du vil hente. Desse uttrekka er tilgjengelege i dag:

UttrekkInnhaldID
Transportportal DatasetsDatasett i Transportportalend097da12-e13b-4696-be30-4165b45a8374
EU-OpenDataOpne datasett som blir hausta av dataportalen til EUea654341-b155-423f-97e6-e64946187d34
EU-Non-OpenDataVerna data (datasett som ikkje er opne) som blir hausta av dataportalen til EU3658f833-1ddf-4efc-85a0-844b53f64f3a
All conceptsAlle omgrep, oppdaterte kvar 24. time834ebf4d-0e40-4645-8e4a-9f1a087f5e96

Ei oppdatert oversikt med talet på postar i kvart uttrekk finn du i API-dokumentasjonen.

Steg 2: Hent første side

Lim inn denne adressa i adressefeltet. Byt ut <ID> med ID-en for uttrekket du valde i steg 1:

https://resource.api.fellesdatakatalog.digdir.no/v1/union-graphs/<ID>/oai-pmh?verb=ListRecords&metadataPrefix=rdfxml

Du får opp XML med dei første 50 postane. Lagre sida med Ctrl+S (Mac: Cmd+S) dersom du vil ta vare på ho.

Steg 3: Finn fortsetjingsnøkkelen

Trykk Ctrl+F (Mac: Cmd+F) og søk etter resumptionToken. Nedst på sida finn du ei linje som liknar på denne:

<resumptionToken completeListSize="81"><ID>:rdfxml:50</resumptionToken>

completeListSize viser kor mange postar uttrekket inneheld totalt. Teksten mellom taggane er nøkkelen til neste side.

Finn du ikkje resumptionToken, er dette siste side, og du har fått alle postane.

Steg 4: Hent neste side

Byt ut alt etter ? i adressa med verb=ListRecords&resumptionToken= etterfølgd av nøkkelen du fant:

https://resource.api.fellesdatakatalog.digdir.no/v1/union-graphs/<ID>/oai-pmh?verb=ListRecords&resumptionToken=<ID>:rdfxml:50

Merk: metadataPrefix=rdfxml skal ikkje vere med på denne og dei neste sidene. Nøkkelen hugsar kva format du valde i steg 2.

Steg 5: Gjenta til du er ferdig

Gjenta steg 3 og 4 for kvar ny side. Nøkkelen endrar seg berre i talet på slutten, som aukar med 50 for kvar side (:50, :100, :150 osv.). Du kan derfor også hente neste side ved å auke talet sjølv. Når sida ikkje har noko resumptionToken, eller det er tomt (<resumptionToken/>), har du henta alle postane.

Aukar du talet forbi slutten av lista, får du eit tomt svar utan postar (<ListRecords/>). Då har du også henta alt.

Tips

  • Firefox og Chrome viser XML som eit lesbart tre. Dersom sida ser tom ut eller berre viser tekst, prøv Ctrl+U (Mac: Cmd+Option+U) for å sjå kjeldekoden.
  • Kolona i nøkkelen fungerer vanlegvis utan endring. Får du feil, prøv å byte : med %3A.
  • Vil du berre sjå kva postar som finst, kan du bruke verb=ListIdentifiers i staden for verb=ListRecords i steg 2. Då blir sidene mykje mindre, og framgangsmåten er den same.