Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Anchor
StartHere
StartHere




Transitionsguide for fildownloads samt etablering og vedligeholdelse af kopiregister
Drift og modernisering af Datafordeleren
Maj 2024
Version 0.9 – 23-05-2024
Anchor
_Hlk146212437
_Hlk146212437
h7.Indholdsfortegnelse
1 Introduktion
1.1 Begreber
2 Fildownloads
2.1 Typer af fildownloads
2.2 Filformater
2.3 Udtræksnumre
2.3.1 Sammenhæng mellem total- og deltaudtræk
2.3.2 Spring i udtræksnumre
2.4 Navngivning af fildownloads
2.5 Skema for generering af fildownloads
2.6 Sådan hentes fildownloads
2.6.1 Metode: GetAvailableFiledownloads
2.6.2 Metode: GetFile
3 Etablering og vedligeholdelse af kopiregister ved brug af fildownloads
4 Transition fra filudtræk til fildownloads
4.1 Indhold i filer
4.1.1 Forskelle i GML og GeoPackage filudtræk og fildownloads
4.2 Geografisk filtrering i fildownloads
4.3 Anvendereksempel på transition fra filudtræk til fildownloads
4.3.1 Situationsbeskrivelse
4.3.2 Transition
4.4 Anvendereksempel på transition med udgangspunkt i kopiregister
4.4.1 Situationsbeskrivelse
4.4.2 Transition
5 Bilag 1: FAQ
6 Bilag 2: Overførsel af filudtræk til fildownloads

Anchor
_Toc167296715
_Toc167296715
Anchor
_Toc167367436
_Toc167367436
Introduktion

Dette dokument er en guide i anvendernes transition fra de abonnementsbaserede filudtræk over til

Anchor
_Hlk166759713
_Hlk166759713
entitetsbaserede fildownloads.
Dokumentet er opdelt i to dele:

  1. Første del af dokumentet beskriver hvad fildownloads er, samt hvordan funktionaliteten anvendes.
  2. Anden del af dokumentet forklarer forskelle, samt hvordan anvendere i forskellige situationer kan komme i gang med at anvende fildownloads.

Dokumentet er tiltænkt følgende læsere:

  1. Eksisterende anvendere af Datafordeleren der henter filudtræk på Datafordeleren, som ønsker at komme i gang med at bruge fildownloads i stedet for.
  2. Nye anvendere, der vil i gang med at bruge fildownloads på Datafordeleren.

Anchor
_Ref167185942
_Ref167185942
Anchor
_Toc167296716
_Toc167296716
Anchor
_Toc167367437
_Toc167367437
Begreber

I dette dokument bruges begreberne i Tabel 1. Bemærk at begreberne også er yderligere forklaret i løbet af dokumentet med eksempler.

Begreb

Beskrivelse

Nuværende Datafordeler

 

Filudtræk:

Filudtræk er en metode at få udtræk af data fra Datafordeleren. Man kan som anvender logge på selvbetjeningen og oprette et abonnement på et specifikt filudtræk – evt. med brugerdefinerede parametre, hvorefter filen bliver genereret og er tilgængelig på en FTP-server. Filudtræk er beskrevet her.

Moderniserede Datafordeler

 

Fildownload:

Fildownloads beskrives i denne vejledning.

Entitet:

En entitet er en fysisk repræsentation af et registerobjekt som findes i Grunddatamodellen. De total- og deltadownloads der kan hentes fra Datafordeleren, indeholder hver især data bestående af en enkelt entitet.

Totaldownload:

Et totaldownload er et udtræk af alle data for en enkelt entitet og refererer til en enkelt fil.

Deltadownload:

Et deltadownload er et udtræk af alle data der har ændret sig, siden forrige deltadownload blev lavet, for en enkelt entitet. Et deltadownload består af en enkelt fil.

Totaludtræk:

Et totaludtræk er et udtræk af alle data i et register eller en delmængde af entiteter fra et register. Et totaludtræk er udgjort at en eller flere totaldownloads. Et totaludtræk kan således bestå af en eller flere filer med tilsvarende entiteter, alt afhængigt af hvor stor en delmængde af et register der er tale om. Bemærk at denne definition kun gælder for fildownloads

Deltaudtræk:

Et deltaudtræk er et udtræk af alle data der har ændret sig, siden forrige deltaudtræk blev lavet, i et register eller en delmængde af entiteter fra et register. Et deltaudtræk er udgjort af et eller flere deltadownloads. Et deltaudtræk kan således bestå af en eller flere filer med tilsvarende entiteter, alt afhængigt af hvor stor en delmængde af et register der er tale om.

Anchor
_Ref167267292
_Ref167267292
Tabel 1: Begrebsliste.

Anchor
_Toc167296717
_Toc167296717
Anchor
_Toc167367438
_Toc167367438
Fildownloads

Fildownloads er en funktionalitet på Datafordeleren til udstilling af data, men skal ikke misforstås som værende det samme som de abonnementsbaserede filudtræk, der også er på Datafordeleren. Fildownloads tilbydes som prædefinerede entitetsbaserede fildownloads og baserer sig på de datamodeller som registrene har på Datafordeleren.
En entitet svarer til en tabel i Grunddatamodellen som er defineret i registrenes datamodel: https://grunddatamodel.datafordeler.dk/. En entitet kan eksempelvis være en "Adresse" fra DAR, en "Bygning" fra BBR eller et "Jordstykke" fra MAT. Det at fildownloads er entitetsbaserede betyder at et fildownload indeholder data for en enkelt type af entitet. Der leveres entitetsbaserede fildownloads på tabulære data og ikke for rasterdata (billeddata). Tabulære data forstås som strukturerede data der kan opbevares i tabeller som f.eks. adresser men ikke billedtyper som skærmkort.
Fildownloads genereres løbende i bestemte intervaller for en række registre, hvorefter filerne kan hentes gennem et REST-API, der udstiller de genererede fildownloads. Det eneste krav til at hente fildownloads er, at man har en tjenestebruger med brugernavn og adgangskode. Fildownloads bruger ikke abonnementer, da de allerede ligger klar til at blive hentet. REST-API'et beskrives nærmere i afsnit 2.6, mens skema for generering samt frekvenser for generering beskrives nærmere i afsnit 2.5.
Image Added

Anchor
_Ref167349779
_Ref167349779
Figur 1: Opsummering af fildownloads-funktionaliteten.
En opsummering hvad fildownloads består af, kan ses i Figur 1. Figuren viser 3 registre:

  • Register A, som har 5 entiteter. Registerets entiteter refererer til hinanden indbyrdes indenfor registeret og har også en enkelt reference til en entitet i register C udenfor registeret.
  • Register B, som har 6 entiteter. Registerets entiteter refererer til hinanden indbyrdes indenfor registeret og har også en enkelt reference til en entitet i register A udenfor registeret.
  • Register C, som har 6 entiteter. Registerets entiteter refererer til hinanden indbyrdes indenfor registeret.

Registrenes entiteter har alle fildownloads, som både består af totaldownloads og deltadownloads. Det skal her bemærkes at Register C har fravalgt at der bliver genereret fildownloads for deres entitet nr. 5 og 6 i dette eksempel.

Anchor
_Toc167296857
_Toc167296857
Anchor
_Toc167296718
_Toc167296718
Anchor
_Toc167297057
_Toc167297057
Anchor
_Toc167298146
_Toc167298146
Anchor
_Toc167298237
_Toc167298237
Anchor
_Toc167347868
_Toc167347868
Anchor
_Toc167349608
_Toc167349608
Anchor
_Toc167349722
_Toc167349722
Anchor
_Toc167350012
_Toc167350012
Anchor
_Toc167353977
_Toc167353977
Anchor
_Toc167356372
_Toc167356372
Anchor
_Ref167185173
_Ref167185173
Anchor
_Ref167185176
_Ref167185176
Anchor
_Toc167296719
_Toc167296719
Anchor
_Toc167367439
_Toc167367439
Typer af fildownloads

Datafordeleren udstiller flere typer af entitetsbaserede fildownloads. Der findes 2 typer af fildownloads, nemlig totaldownloads og deltadownloads (se Tabel 1). Datafordeleren opbevarer ét totaldownload pr. type pr. entitet, mens der opbevares deltadownloads 14 dage fra de blev genereret.
Hvis der genereres fildownloads for en entitet, bliver der altid genereret både totaldownloads og deltadownloads. Udover at der findes flere typer af fildownloads, findes der også flere typer af filtreringer på den data som de genererede fildownloads indeholder. Dette skyldes at delmængder af data på Datafordeleren er bitemporal og at der dermed kan være flere forekomster af det samme objekt over tid i to tidsdimensioner https://confluence.sdfi.dk/display/DML/Grunddata+-+bitemporalitet.

  • Fuldt bitemporalt fildownload: Et fuldt bitemporalt fildownload inkluderer alt, hvad angår både registreringstid og virkningstid.
  • Temporalt fildownload: Et temporalt fildownload filtrerer registreringsdimensionen fra, men beholder virkningsdimensionen.
  • Fildownload med aktuelle data: Både registreringstiden og virkningstiden er sat til at være på det pågældende tidspunkt fildownload blev lavet.

Det er muligt at kombinere en type fildownload med en type af bitemporal filtrering og filformat. En opsummering af, hvilke fildownloads der eksisterer kan ses i Tabel 2.

Type af fildownload

Type af bitemporal filtrering

Typer af filformater

Totaldownload

Bitemporal

JSON, GML og GPKG

Totaldownload

Temporal

 

Totaldownload

Aktuel

 

Deltadownload

Bitemporal

 

Anchor
_Ref167282760
_Ref167282760
Anchor
_Ref166230523
_Ref166230523
Tabel 2: Oversigt over understøttede typer af fildownloads på Datafordeleren.

Anchor
_Toc167280488
_Toc167280488
Anchor
_Toc167281132
_Toc167281132
Anchor
_Toc167282662
_Toc167282662
Anchor
_Toc167282712
_Toc167282712
Anchor
_Toc167285223
_Toc167285223
Anchor
_Toc167296859
_Toc167296859
Anchor
_Toc167296720
_Toc167296720
Anchor
_Toc167297059
_Toc167297059
Anchor
_Toc167298148
_Toc167298148
Anchor
_Toc167298239
_Toc167298239
Anchor
_Toc167347870
_Toc167347870
Anchor
_Toc167349610
_Toc167349610
Anchor
_Toc167349724
_Toc167349724
Anchor
_Toc167350014
_Toc167350014
Anchor
_Toc167353979
_Toc167353979
Anchor
_Toc167356374
_Toc167356374
Anchor
_Toc167280489
_Toc167280489
Anchor
_Toc167281133
_Toc167281133
Anchor
_Toc167282663
_Toc167282663
Anchor
_Toc167282713
_Toc167282713
Anchor
_Toc167285224
_Toc167285224
Anchor
_Toc167296860
_Toc167296860
Anchor
_Toc167296721
_Toc167296721
Anchor
_Toc167297060
_Toc167297060
Anchor
_Toc167298149
_Toc167298149
Anchor
_Toc167298240
_Toc167298240
Anchor
_Toc167347871
_Toc167347871
Anchor
_Toc167349611
_Toc167349611
Anchor
_Toc167349725
_Toc167349725
Anchor
_Toc167350015
_Toc167350015
Anchor
_Toc167353980
_Toc167353980
Anchor
_Toc167356375
_Toc167356375
Anchor
_Toc167280490
_Toc167280490
Anchor
_Toc167281134
_Toc167281134
Anchor
_Toc167282664
_Toc167282664
Anchor
_Toc167282714
_Toc167282714
Anchor
_Toc167285225
_Toc167285225
Anchor
_Toc167296861
_Toc167296861
Anchor
_Toc167296722
_Toc167296722
Anchor
_Toc167297061
_Toc167297061
Anchor
_Toc167298150
_Toc167298150
Anchor
_Toc167298241
_Toc167298241
Anchor
_Toc167347872
_Toc167347872
Anchor
_Toc167349612
_Toc167349612
Anchor
_Toc167349726
_Toc167349726
Anchor
_Toc167350016
_Toc167350016
Anchor
_Toc167353981
_Toc167353981
Anchor
_Toc167356376
_Toc167356376
Anchor
_Toc167280491
_Toc167280491
Anchor
_Toc167281135
_Toc167281135
Anchor
_Toc167282665
_Toc167282665
Anchor
_Toc167282715
_Toc167282715
Anchor
_Toc167285226
_Toc167285226
Anchor
_Toc167296862
_Toc167296862
Anchor
_Toc167296723
_Toc167296723
Anchor
_Toc167297062
_Toc167297062
Anchor
_Toc167298151
_Toc167298151
Anchor
_Toc167298242
_Toc167298242
Anchor
_Toc167347873
_Toc167347873
Anchor
_Toc167349613
_Toc167349613
Anchor
_Toc167349727
_Toc167349727
Anchor
_Toc167350017
_Toc167350017
Anchor
_Toc167353982
_Toc167353982
Anchor
_Toc167356377
_Toc167356377
Anchor
_Toc167280492
_Toc167280492
Anchor
_Toc167281136
_Toc167281136
Anchor
_Toc167282666
_Toc167282666
Anchor
_Toc167282716
_Toc167282716
Anchor
_Toc167285227
_Toc167285227
Anchor
_Toc167296863
_Toc167296863
Anchor
_Toc167296724
_Toc167296724
Anchor
_Toc167297063
_Toc167297063
Anchor
_Toc167298152
_Toc167298152
Anchor
_Toc167298243
_Toc167298243
Anchor
_Toc167347874
_Toc167347874
Anchor
_Toc167349614
_Toc167349614
Anchor
_Toc167349728
_Toc167349728
Anchor
_Toc167350018
_Toc167350018
Anchor
_Toc167353983
_Toc167353983
Anchor
_Toc167356378
_Toc167356378
Anchor
_Toc167280493
_Toc167280493
Anchor
_Toc167281137
_Toc167281137
Anchor
_Toc167282667
_Toc167282667
Anchor
_Toc167282717
_Toc167282717
Anchor
_Toc167285228
_Toc167285228
Anchor
_Toc167296864
_Toc167296864
Anchor
_Toc167296725
_Toc167296725
Anchor
_Toc167297064
_Toc167297064
Anchor
_Toc167298153
_Toc167298153
Anchor
_Toc167298244
_Toc167298244
Anchor
_Toc167347875
_Toc167347875
Anchor
_Toc167349615
_Toc167349615
Anchor
_Toc167349729
_Toc167349729
Anchor
_Toc167350019
_Toc167350019
Anchor
_Toc167353984
_Toc167353984
Anchor
_Toc167356379
_Toc167356379
Anchor
_Toc167280494
_Toc167280494
Anchor
_Toc167281138
_Toc167281138
Anchor
_Toc167282668
_Toc167282668
Anchor
_Toc167282718
_Toc167282718
Anchor
_Toc167285229
_Toc167285229
Anchor
_Toc167296865
_Toc167296865
Anchor
_Toc167296726
_Toc167296726
Anchor
_Toc167297065
_Toc167297065
Anchor
_Toc167298154
_Toc167298154
Anchor
_Toc167298245
_Toc167298245
Anchor
_Toc167347876
_Toc167347876
Anchor
_Toc167349616
_Toc167349616
Anchor
_Toc167349730
_Toc167349730
Anchor
_Toc167350020
_Toc167350020
Anchor
_Toc167353985
_Toc167353985
Anchor
_Toc167356380
_Toc167356380
Anchor
_Toc167280495
_Toc167280495
Anchor
_Toc167281139
_Toc167281139
Anchor
_Toc167282669
_Toc167282669
Anchor
_Toc167282719
_Toc167282719
Anchor
_Toc167285230
_Toc167285230
Anchor
_Toc167296866
_Toc167296866
Anchor
_Toc167296727
_Toc167296727
Anchor
_Toc167297066
_Toc167297066
Anchor
_Toc167298155
_Toc167298155
Anchor
_Toc167298246
_Toc167298246
Anchor
_Toc167347877
_Toc167347877
Anchor
_Toc167349617
_Toc167349617
Anchor
_Toc167349731
_Toc167349731
Anchor
_Toc167350021
_Toc167350021
Anchor
_Toc167353986
_Toc167353986
Anchor
_Toc167356381
_Toc167356381
Anchor
_Toc167280496
_Toc167280496
Anchor
_Toc167281140
_Toc167281140
Anchor
_Toc167282670
_Toc167282670
Anchor
_Toc167282720
_Toc167282720
Anchor
_Toc167285231
_Toc167285231
Anchor
_Toc167296867
_Toc167296867
Anchor
_Toc167296728
_Toc167296728
Anchor
_Toc167297067
_Toc167297067
Anchor
_Toc167298156
_Toc167298156
Anchor
_Toc167298247
_Toc167298247
Anchor
_Toc167347878
_Toc167347878
Anchor
_Toc167349618
_Toc167349618
Anchor
_Toc167349732
_Toc167349732
Anchor
_Toc167350022
_Toc167350022
Anchor
_Toc167353987
_Toc167353987
Anchor
_Toc167356382
_Toc167356382
Anchor
_Toc167280497
_Toc167280497
Anchor
_Toc167281141
_Toc167281141
Anchor
_Toc167282671
_Toc167282671
Anchor
_Toc167282721
_Toc167282721
Anchor
_Toc167285232
_Toc167285232
Anchor
_Toc167296868
_Toc167296868
Anchor
_Toc167296729
_Toc167296729
Anchor
_Toc167297068
_Toc167297068
Anchor
_Toc167298157
_Toc167298157
Anchor
_Toc167298248
_Toc167298248
Anchor
_Toc167347879
_Toc167347879
Anchor
_Toc167349619
_Toc167349619
Anchor
_Toc167349733
_Toc167349733
Anchor
_Toc167350023
_Toc167350023
Anchor
_Toc167353988
_Toc167353988
Anchor
_Toc167356383
_Toc167356383
Anchor
_Toc167280498
_Toc167280498
Anchor
_Toc167281142
_Toc167281142
Anchor
_Toc167282672
_Toc167282672
Anchor
_Toc167282722
_Toc167282722
Anchor
_Toc167285233
_Toc167285233
Anchor
_Toc167296869
_Toc167296869
Anchor
_Toc167296730
_Toc167296730
Anchor
_Toc167297069
_Toc167297069
Anchor
_Toc167298158
_Toc167298158
Anchor
_Toc167298249
_Toc167298249
Anchor
_Toc167347880
_Toc167347880
Anchor
_Toc167349620
_Toc167349620
Anchor
_Toc167349734
_Toc167349734
Anchor
_Toc167350024
_Toc167350024
Anchor
_Toc167353989
_Toc167353989
Anchor
_Toc167356384
_Toc167356384
Anchor
_Toc167280499
_Toc167280499
Anchor
_Toc167281143
_Toc167281143
Anchor
_Toc167282673
_Toc167282673
Anchor
_Toc167282723
_Toc167282723
Anchor
_Toc167285234
_Toc167285234
Anchor
_Toc167296870
_Toc167296870
Anchor
_Toc167296731
_Toc167296731
Anchor
_Toc167297070
_Toc167297070
Anchor
_Toc167298159
_Toc167298159
Anchor
_Toc167298250
_Toc167298250
Anchor
_Toc167347881
_Toc167347881
Anchor
_Toc167349621
_Toc167349621
Anchor
_Toc167349735
_Toc167349735
Anchor
_Toc167350025
_Toc167350025
Anchor
_Toc167353990
_Toc167353990
Anchor
_Toc167356385
_Toc167356385
Anchor
_Toc167280500
_Toc167280500
Anchor
_Toc167281144
_Toc167281144
Anchor
_Toc167282674
_Toc167282674
Anchor
_Toc167282724
_Toc167282724
Anchor
_Toc167285235
_Toc167285235
Anchor
_Toc167296871
_Toc167296871
Anchor
_Toc167296732
_Toc167296732
Anchor
_Toc167297071
_Toc167297071
Anchor
_Toc167298160
_Toc167298160
Anchor
_Toc167298251
_Toc167298251
Anchor
_Toc167347882
_Toc167347882
Anchor
_Toc167349622
_Toc167349622
Anchor
_Toc167349736
_Toc167349736
Anchor
_Toc167350026
_Toc167350026
Anchor
_Toc167353991
_Toc167353991
Anchor
_Toc167356386
_Toc167356386
Anchor
_Toc167296733
_Toc167296733
Anchor
_Toc167367440
_Toc167367440
Filformater

Tabel 3 nedenfor viser, hvilke registre der har fildownloads på deres entiteter, samt hvilke filformater der er tilgængelige for registrenes entiteter. Et kryds i en række i tabellen indikerer at filformatet generelt er understøttet for det givne registers entiteter.

Register

JSON

GPKG

GML

BBR

X

 

 

DAR

X

 

 

EBR

X

 

 

MAT2

X

X

X

DAGI

X

X

X

DHM Oprindelse

X

X

X

DHM Højdekurver

X

X

X

Danske Stednavne

X

X

X

GeoDanmark Vektor

X

X

X

FIKSPUNKT

X

X

X

Anchor
_Ref167269316
_Ref167269316
Anchor
_Ref166233945
_Ref166233945
Tabel 3: Oversigt over understøttede filformater per register.
Det skal bemærkes det ikke er alle entiteter for et register der har fildownloads i GPKG og GML-format, selvom dette er indikeret i Tabel 3. Der skal gøre sig følgende gældende for at en entitet understøttes i GPKG eller GML-format:

  • GPKG-formatet understøttes på en entitet hvis entiteten indeholder 0 eller 1 geometrier.
  • GML-formatet understøttes på en entitet hvis entiteten indeholder minimum 1 geometri.

Anchor
_Toc167296734
_Toc167296734
Anchor
_Toc167367441
_Toc167367441
Udtræksnumre

Udtræksnumre er en fortløbende talrække der beskriver tidsmæssig sammenhæng mellem data i et register. Hver gang der genereres fildownloads for et register, påsættes alle fildownloads ved samme generering det samme udtræksnummer. Dette bevirker at fildownloads med det samme udtræksnummer indeholder konsistente data indenfor registerets egen data. Denne egenskab er særlig relevant hvis man som anvender er interesseret i at sammensætte data fra flere entiteter i et register.
Det er her vigtigt at understrege, at udtræksnumrene kun er fortløbende per register, og at hvert register derfor har sin egen fortløbende talrække, der er uafhængig af andre registre. Udtræksnumre kan derfor ikke garantere referentiel integritet på tværs af registrenes data, da dette afhænger af registrenes indlæsningstidspunkter, samt indlæsningsfrekvens.

Anchor
_Toc167297074
_Toc167297074
Anchor
_Toc167298163
_Toc167298163
Anchor
_Toc167298254
_Toc167298254
Anchor
_Toc167347885
_Toc167347885
Anchor
_Toc167349625
_Toc167349625
Anchor
_Toc167349739
_Toc167349739
Anchor
_Toc167350029
_Toc167350029
Anchor
_Toc167353994
_Toc167353994
Anchor
_Toc167356389
_Toc167356389
Anchor
_Toc167296735
_Toc167296735
Anchor
_Toc167367442
_Toc167367442
Sammenhæng mellem total- og deltaudtræk

Det er muligt at vedligeholde en lokal kopi af registrenes data som findes på Datafordeleren ved at hente totaludtræk – og herefter løbende hente deltaudtræk.
Kopien etableres først lokalt, ved at hente totaldownloads for den/de entiteter der er interesse for, for at skabe totaludtrækket. Idet totaludtrækket er hentet, skal det bemærkes hvilket udtræksnummer totaludtrækket har, da udtræksnummeret skal bruges til at identificere hvilke deltadownloads der er relevante at hente, for at skabe det samlede deltaudtræk der kan opdatere den initiale kopi af data. Et totaldownload og deltadownload med det samme udtræksnummer indeholder data fra samme generation. Dette betyder at deltaudtræk med samme udtræksnummer som et totaludtræk indeholder dermed ingen data som ikke også er indeholdt i totaludtrækket. Det udtræksnummer der skal bruges til at opdatere kopien af data, er dermed det næste udtræksnummer i talrækken.
Et eksempel på dette kan ses i Figur 2, som viser en række genererede deltaudtræk, samt et genereret totaludtræk. Hver generering har resulteret i, at der enten er blevet genereret et deltaudtræk og/eller et totaludtræk. Det kan ses på figuren, at der eksisterer både et totaludtræk, samt et deltaudtræk med udtræksnummeret 3 og 10. Såfremt det ønskes at etablere en kopi af data fra entiteten, kan totaludtrækket med udtræksnummeret 3 først hentes – og så herefter hente deltaudtrækkene med udtræksnummer 4, 5 og 6 for at vedligeholde datakopien. Det er således ikke nødvendigt at hente deltaudtrækket med udtræksnummer 3, da deltaudtrækket blev genereret på samme tid som totaludtrækket.
Image Added

Anchor
_Ref166500737
_Ref166500737
Figur 2: Overblik over hvordan udtræksnumre hænger sammen mellem total- og deltaudtræk.

Anchor
_Toc167350031
_Toc167350031
Anchor
_Toc167353996
_Toc167353996
Anchor
_Toc167356391
_Toc167356391
Anchor
_Toc167296736
_Toc167296736
Anchor
_Toc167367443
_Toc167367443
Spring i udtræksnumre

Dette afsnit er særligt relevant for anvendere, der implementerer programmel, som anvender udtræksnumre til at indhente fildownloads automatisk. Der kan i sjældne tilfælde forekomme et spring i udtræksnumre. Dette skyldes, at der eksisterer et nyere udtræksnummer for det pågældende register, og at generering af fildownloads, derfor, vil bruge det nyere udtræksnummer for at sikre konsistente data inden for registeret.
Processen for indhentning af deltaudtræk bør, på baggrund af ovenstående, følge følgende logik:

  1. Tjek hvilket udtræksnummer der er påsat senest indhentede deltaudtræk.
  2. Indhent deltaudtræk med udtræksnumre der er større end det sidst indhentede deltaudtræks udtræksnummer.
    1. Dette sikrer at alle nyere deltaudtræk altid hentes uden at der springes nogle over, selvom der sker spring i udtræksnummeret på deltaudtrækkene.

Anchor
_Toc167297077
_Toc167297077
Anchor
_Toc167298166
_Toc167298166
Anchor
_Toc167298257
_Toc167298257
Anchor
_Toc167347888
_Toc167347888
Anchor
_Toc167349628
_Toc167349628
Anchor
_Toc167349742
_Toc167349742
Anchor
_Toc167350033
_Toc167350033
Anchor
_Toc167353998
_Toc167353998
Anchor
_Toc167356393
_Toc167356393
Anchor
_Toc167296737
_Toc167296737
Anchor
_Ref167348193
_Ref167348193
Anchor
_Toc167367444
_Toc167367444
Navngivning af fildownloads

De fildownloads der genereres på Datafordeleren følger alle en navnestandard, der hjælper med at beskrive hvad indholdet af filen er. Navnestandarden ser ud som set på Figur 3.
Image Added

Anchor
_Ref166487155
_Ref166487155
Figur 3: Overblik over navnestandard på fildownloads.
Et fildownload som følger navnestandarden kan derfor eksempelvis have navn som følgende:

  1. DAR_1_Adresse_TotalDownload_JSON_Bitemporal_10.zip
  2. DAR_1_Adresse_DeltaDownload_JSON_Bitemporal_11.zip
  3. BBR_1_Bygning_TotalDownload_JSON_Temporal_123.zip
  4. MAT_1_Lodflade_TotalDownload_GPKG_Current_7.zip
  5. DAGI_1_Kommuneinddeling_TotalDownload_GML_Current_42.zip


Man kan ud fra navngivningen af ovenstående fildownloads udlede følgende:

  1. Fildownload nr. 1 indeholder et fuldt bitemporalt totaldownload af Adresse-entiteten som ligger i DAR. Filen der downloades er en ZIP-fil, men ZIP-filen indeholder en JSON-fil. Filen har udtræksnummer 10.
  2. Fildownload nr. 2 indeholder et fuldt bitemporalt deltadownload af Adresse-entiteten som ligger i DAR. Filen der downloades er en ZIP-fil, men ZIP-filen indeholder en JSON-fil. Deltafilen har udtræksnummer 11 og ville derfor indeholde alle ændringer der var sket for Adresse-entiteten siden udtræksnummer 10. Denne deltafil ville derfor kunne bruges til at opdatere en datakopi der havde indlæst fildownload nr. 1, som har udtræksnummer 10.
  3. Fildownload nr. 3 indeholder et temporalt totaldownload af Bygning-entiteten som ligger i BBR. Filen der downloades er en ZIP-fil, men ZIP-filen indeholder en JSON-fil. Filen har udtræksnummer 123.
  4. Fildownload nr. 4 indeholder et totaldownload med aktuelle data af Lodflade-entiteten som ligger i MAT. Filen der downloades er en ZIP-fil, men ZIP-filen indeholder en GPKG-fil. Filen har udtræksnummer 7.
  5. Fildownload nr. 5 indeholder et totaldownload med aktuelle data af Kommuneinddeling-entiteten som ligger i DAGI. Filen der downloades er en ZIP-fil, men ZIP-filen indeholder en GML-fil. Filen har udtræksnummer 42.

Anchor
_Toc167296877
_Toc167296877
Anchor
_Toc167296738
_Toc167296738
Anchor
_Toc167297079
_Toc167297079
Anchor
_Toc167298168
_Toc167298168
Anchor
_Toc167298259
_Toc167298259
Anchor
_Toc167347890
_Toc167347890
Anchor
_Toc167349630
_Toc167349630
Anchor
_Toc167349744
_Toc167349744
Anchor
_Toc167350035
_Toc167350035
Anchor
_Toc167354000
_Toc167354000
Anchor
_Toc167356395
_Toc167356395
Anchor
_Ref166508916
_Ref166508916
Anchor
_Ref166514241
_Ref166514241
Anchor
_Toc167296739
_Toc167296739
Anchor
_Toc167367445
_Toc167367445
Skema for generering af fildownloads

Skemaet i Tabel 4 viser, hvornår der genereres fildownloads for registrene på Datafordeleren. Bemærk at et register kan have frabedt sig at få genereret fildownloads for bestemte entiteter i deres datamodel og vil således ikke blive genereret efter skemaet. Lige så snart et fildownload er genereret, vil det være tilgængeligt igennem REST-API'et, som udstiller fildownloads. REST-API'et beskrives nærmere i afsnit 2.6.

Register

Type af fildownload

Genereres hvornår (mellem kl. 3 og 6 om natten)

EBR

Totaldownload

Lørdag

DAR

Totaldownload

Lørdag

BBR

Totaldownload

Lørdag

MAT2

Totaldownload

Søndag

DAGI

Totaldownload

Søndag

GeoDanmarkVektor

Totaldownload

Søndag

Danske Stednavne

Totaldownload

Mandag

DHM Oprindelse

Totaldownload

Mandag

DHM Højdekurver

Totaldownload

Mandag

FIKSPUNKT

Totaldownload

Mandag

Alle registre

Deltadownload

Hver nat

Anchor
_Ref167282791
_Ref167282791
Anchor
_Ref166253769
_Ref166253769
Tabel 4: Oversigt over hvornår fildownloads bliver genereret.
Såfremt der genereres et deltadownload, men at der ikke er sket nogle dataændringer siden sidste gang der blev genereret et deltadownload for en pågældende entitet, vil deltadownloadet være tomt. Hvis der genereres et totaldownload uden at der er sket dataændringer siden sidste gang, det blev genereret, vil det nye totaldownload i JSON-, GML- eller GPKG-format have et ældre udtræksnummer i sit filnavn end den zip-fil den er indeholdt i.
Eksempelvis er det muligt at hente en fil med følgende navn:

  • DAR_1_Adresse_Total_JSON_Bitemporal_10.zip

Her er udtræksnummeret på ZIP-filen 10, men ZIP-filen kan godt indeholde en JSON-fil med følgende navn:

  • DAR_1_Adresse_Total_JSON_Bitemporal_9.json

JSON-filen har et lavere udtræksnummer end ZIP-filen, da der ikke er sket nogen ændringer i data siden sidste totaludtræk blev genereret for Adresse-entiteten. Såfremt der heller ikke sker nogen ændringer i Adresse-entiteten inden næste generering, vil ZIP-filen få udtræksnummer 11, mens den indeholdte JSON-fil stadig vil have udtræksnummer 9.

Anchor
_Ref166508857
_Ref166508857
Anchor
_Ref166514181
_Ref166514181
Anchor
_Toc167296740
_Toc167296740
Anchor
_Toc167367446
_Toc167367446
Sådan hentes fildownloads

Fildownloads på Datafordeleren tilgås via et REST-API. Dette afsnit beskriver, hvordan det vil være muligt at danne et overblik over hvilke fildownloads der kan hentes, samt hvorledes relevante fildownloads herefter hentes. REST-API'et indeholder to metoder som kan kaldes. REST-API'et kræver at man først har oprettet en tjenestebruger med brugernavn og password.
Image Added

Anchor
_Ref166513817
_Ref166513817
Figur 4: Overblik over samlet anvendelsesmønster for fildownloads.
Figur 4 viser hvordan REST-API'et overordnet set anvendes. Her kaldes metoden "GetAvailableFileDownloads" først for at danne et overblik over mulige filer der er tilgængelige, hvorefter relevante filer hentes, ved at kalde metoden "GetFile".

Anchor
_Toc167296880
_Toc167296880
Anchor
_Toc167296741
_Toc167296741
Anchor
_Toc167297082
_Toc167297082
Anchor
_Toc167298171
_Toc167298171
Anchor
_Toc167298262
_Toc167298262
Anchor
_Toc167347893
_Toc167347893
Anchor
_Toc167349633
_Toc167349633
Anchor
_Toc167349747
_Toc167349747
Anchor
_Toc167350038
_Toc167350038
Anchor
_Toc167354003
_Toc167354003
Anchor
_Toc167356398
_Toc167356398
Anchor
_Toc167296742
_Toc167296742
Anchor
_Toc167367447
_Toc167367447
Metode: GetAvailableFiledownloads

Metode: GetAvailableFiledownloads

 

URL

https://<env>-api.datafordeler.dk/FileDownloads/GetAvailableFileDownloads?

HTTP-metode

GET

Headere i forespørgsel

Content-Type: application/json

Format

JSON

Returværdier

  • Returnerer HTTP 200 – OK, ved succes.
  • Returnerer HTTP 400 – Bad Request, ved angivelse af forkerte parametre.
  • Returnerer HTTP 404 – Not Found, hvis den angivne ressource ikke kan findes.
  • Returnerer HTTP 500 – Internal Server Error, hvis der er sket en ukendt fejl.

Adgang

Tjenestebruger med brugernavn og password.

Dato- og tidsformat

Datoformat følger ISO 8601Tidszonen er UTC

Parametre

Navn

Type

Beskrivelse

Valgfri?

Register

String

Begrænser responsen til kun at indeholde fildownloads fra det angivne register. Følgende registre kan angives:

  • DAR
  • DAGI
  • BBR
  • DHMOprindelse
  • DHMHoejdekurver
  • MAT (Der refereres her til Matriklen 2)
  • EBR
  • FIKSPUNKT
  • DS (Danske Stednavne)
  • GeoDKV

Ja

Version

String

Begrænser responsen til kun at indeholde fildownloads der er i den angivne version. Parameteret kan kun angives hvis "Register" parameteret er angivet.

Ja

Entity

String

Begrænser responsen til kun at indeholde fildownloads der er af samme type som den angivne entitet. Parameteret kan kun angives hvis "Register" parameteret er angivet.

Ja


Returværdier

Metoden returnerer metadata om fildownloads, der følger strukturen beskrevet i Tabel 5.

Felt

Beskrivelse

Filename

Navnet på filen som kan downloades.

Register

Angiver hvilket register data i filen tilhører.

EntityName

Angiver navnet på registerentiteten som filens data tilhører.

Frequency

Angiver hvornår/hvor ofte der bliver genereret en ny fil af samme type med nyt udtræksnummer.

TypeOfDownload

Angiver om filen er et totaldownload eller et deltadownload.

TypeOfData

Angiver hvilken bitemporal filtrering der er anvendt på data i filen. Denne kan enten være "Bitemporal", "Temporal" eller "Current".

Version

Angiver underlæggende version af filens data.

GenerationNumber

Angiver udtræksnummeret.

PointInTime

Angiver tidspunkt for registrerings- og virkningstid der blev anvendt ved generering af fildownload. Feltet er kun sat hvis der er tale om et Temporalt eller Current fildownload.
Datoformat følger ISO 8601Tidszonen er UTC

GenerationTime

Angiver tidspunktet for hvornår filen blev genereret. Datoformat følger ISO 8601Tidszonen er UTC

ExpirationDate

Angiver hvornår filen ikke længere udstilles på Datafordeleren.
Datoformat følger ISO 8601Tidszonen er UTC

ContainedFileFormat

Angiver hvilket filformat ZIP-filen indeholder.

OutputFileFormat

Angiver filformatet på selve filen som kan downloades.

Anchor
_Ref167282811
_Ref167282811
Anchor
_Ref166582315
_Ref166582315
Anchor
_Ref166582310
_Ref166582310
Tabel 5: Overblik over returværdier for GetAvailableFiledownloads metoden.

Eksempler på brug af metoden

Se tilgængelige fildownloads for DAGI:

Se tilgængelige fildownloads for "Bygning"-entiteten:

Se tilgængelige fildownloads i version 1 i EBR:

Anchor
_Toc167296882
_Toc167296882
Anchor
_Toc167296743
_Toc167296743
Anchor
_Toc167297084
_Toc167297084
Anchor
_Toc167298173
_Toc167298173
Anchor
_Toc167298264
_Toc167298264
Anchor
_Toc167347895
_Toc167347895
Anchor
_Toc167349635
_Toc167349635
Anchor
_Toc167349749
_Toc167349749
Anchor
_Toc167350040
_Toc167350040
Anchor
_Toc167354005
_Toc167354005
Anchor
_Toc167356400
_Toc167356400
Anchor
_Toc167296744
_Toc167296744
Anchor
_Toc167367448
_Toc167367448
Metode: GetFile

Metode: GetFile

 

URL

https://<env>-api.datafordeler.dk/FileDownloads/GetFile?

http-metode

GET

Headere i forespørgsel

Content-Type: application/json

Format

JSON

Returværdier

  • Returnerer http 200 – OK, ved succes.
  • Returnerer HTTP 400 – Bad Request, ved angivelse af forkerte parametre.
  • Returnerer HTTP 404 – Not Found, hvis den angivne ressource ikke kan findes eller hvis brugeren ikke har adgang til den angivne fil.
  • Returnerer HTTP 500 – Internal Server Error, hvis der er sket en ukendt fejl.

Adgang

Tjenestebruger med brugernavn og password.

Dato- og tidsformat

Datoformat følger ISO 8601Tidszonen er UTC


Parametre

Navn

Type

Beskrivelse

Filename

String

Specificerer en specifik fil til download. Dette parameter kan kun angives alene.

Register

String

Specificerer, hvilket register der ønskes download fra. Hvis ikke parametrene 'LatestTotalForEntry' og 'Type' angives, bliver alle registerets totaldownloads downloadet.
Følgende registre kan angives:

  • DAR
  • DAGI
  • BBR
  • DHMOprindelse
  • DHMHoejdekurver
  • MAT (Der refereres her til Matriklen 2)
  • EBR
  • FIKSPUNKT
  • DS (Danske Stednavne)
  • GeoDKV

LatestTotalForEntity

String

Henter det seneste totaldownload for den specificerede entitet. 'Type' parameteret skal angives, såfremt dette parameter er angivet.

Type

String

Angiver hvilken type fildownload der skal downloades for entiteten. 'LatestTotalForEntity' parameteret skal angives, såfremt dette parameter er angivet.

Format

String

Angiver hvilket filformat der ønskes. Hvis 'LatestTotalForEntity' parameteret er angivet, skal dette parameter også angives.

Version

String

Angiver hvilken version fildownloadet skal være i. Såfremt dette parameter ikke angives, vælges den nyeste version.

Returværdier

Denne metode returnerer altid en eller flere filer ved HTTP 200 - OK.

Anchor
_Ref167185129
_Ref167185129
Eksempler på brug af metoden

Hent en specifik deltafil fra Danske Stednavne registeret:

Kaldet returnerer en enkelt fil i en ZIP-fil.
Hent totaldownloads for alle entiteter i BBR:

Kaldet returnerer flere filer i en samlet ZIP-fil.
Hent totaldownload med aktuelle data i GML-format for en bestemt entitet i Fikspunkt-registeret:

Kaldet returnerer en enkelt fil i en ZIP-fil.

Anchor
_Toc167367449
_Toc167367449
Etablering og vedligeholdelse af kopiregister ved brug af fildownloads

Dette afsnit beskriver hvordan en anvender kan etablere et kopiregister lokalt ved at hente totaldownloads og herefter vedligeholde det ved at hente deltadownloads. Afsnit 2.4 beskriver kort hvordan dette gøres, mens dette afsnit tager de introducerede koncepter fra indeværende vejledning og bruger dem i dette eksempel.
Et kopiregister er en hel kopi eller en delmængde af et registers data. Der kan være flere årsager til at have et kopiregister, men en af årsagerne er, at data er tilgængeligt indenfor anvenderens egen virksomhed og mindsker egen afhængighed til opslag på Datafordeleren. Det er dog vigtigt at understrege at kopiregisteret skal opdateres løbende for at beholde sin værdi, såfremt aktuelle data er nødvendige i virksomhedens brugsscenarie.
Etablering af et kopiregister initieres ved først at hente et totaldownloads af relevante entiteter fra Datafordeleren. For at finde ud af, hvilke filer der er tilgængelige, benyttes GetAvailableFileDownloads-metoden. Dette gøres ved hjælp af følgende endpoint strukturering: Image Added
Ovenstående kald vil returnere følgende (forsimplet): Image Added
I ovenstående ses, at der både er et total- og deltautræk tilgængeligt. Når man vil etablere sit kopiregister, er det, som tidligere beskrevet, det samlede totaludtræk man er interesseret i.
I dette scenarie repræsenterer filen "DAR1AdresseTotalJSONBitemporal101.zip" det samlede totaludtræk. Man vil derfor benytte sig af GetFile-metoden, som eksemplificeret nedenfor, til at hente filen:
Image Added
Man kan også hente det seneste totaludtræk via følgende metode: Image Added
Vedligeholdelse af kopiregisteret opnås ved brug af deltaudtræk, hvilket sikrer, at kopiregisteret kontinuerligt opdateres med de nyeste data. De tre efterfølgende filer " DAR1AdresseDeltaJSONBitemporal102.zip", "DAR1AdresseDeltaJSONBitemporal103.zip" og "DAR1AdresseDeltaJSONBitemporal104.zip" repræsenterer i dette eksempel hver især deres eget deltaudtræk, bestående af entiteterne tilsvarende det totaludtræk der tidligere var hentet. Hver fil indeholder ændringer siden det forrige deltaudtræk og har et unikt udtræksnummer (henholdsvis 102, 103 og 104, som vist i Figur 5), der fungerer til at identificere hver iteration og sikrer korrekt anvendelse af data.
Som beskrevet ovenfor, viser følgende illustration i Figur 5 hvorledes total-og deltautræk benyttes mellem Datafordeleren og anvenderen, til at etablere og vedligeholde et kopiregister. Image Added

Anchor
_Ref167349574
_Ref167349574
Figur 5: Illustration af etablering og vedligeholdelse af kopiregister ved brug af total- og deltaudtræk.

Anchor
_Toc167296884
_Toc167296884
Anchor
_Toc167296745
_Toc167296745
Anchor
_Toc167297086
_Toc167297086
Anchor
_Toc167298175
_Toc167298175
Anchor
_Toc167298266
_Toc167298266
Anchor
_Toc167347897
_Toc167347897
Anchor
_Toc167349638
_Toc167349638
Anchor
_Toc167349752
_Toc167349752
Anchor
_Toc167350043
_Toc167350043
Anchor
_Toc167354008
_Toc167354008
Anchor
_Toc167356403
_Toc167356403
Anchor
_Toc167296746
_Toc167296746
Anchor
_Toc167367450
_Toc167367450
Transition fra filudtræk til fildownloads

Dette afsnit beskriver forskelle mellem abonnementsbaserede filudtræk og prædefinerede entitetsbaserede fildownloads, samt hvordan man som anvender af filudtræk, kan komme i gang med at bruge entitetsbaserede fildownloads i stedet for. Det skal bemærkes at filudtræk og fildownloads driftes parallelt i en periode, så anvendere af Datafordeleren har mulighed for at skifte til fildownloads.

Anchor
_Toc167280511
_Toc167280511
Anchor
_Toc167281155
_Toc167281155
Anchor
_Toc167282685
_Toc167282685
Anchor
_Toc167282735
_Toc167282735
Anchor
_Toc167285246
_Toc167285246
Anchor
_Toc167296886
_Toc167296886
Anchor
_Toc167296747
_Toc167296747
Anchor
_Toc167297088
_Toc167297088
Anchor
_Toc167298177
_Toc167298177
Anchor
_Toc167298268
_Toc167298268
Anchor
_Toc167347899
_Toc167347899
Anchor
_Toc167349640
_Toc167349640
Anchor
_Toc167349754
_Toc167349754
Anchor
_Toc167350045
_Toc167350045
Anchor
_Toc167354010
_Toc167354010
Anchor
_Toc167356405
_Toc167356405
Anchor
_Toc167280512
_Toc167280512
Anchor
_Toc167281156
_Toc167281156
Anchor
_Toc167282686
_Toc167282686
Anchor
_Toc167282736
_Toc167282736
Anchor
_Toc167285247
_Toc167285247
Anchor
_Toc167296887
_Toc167296887
Anchor
_Toc167296748
_Toc167296748
Anchor
_Toc167297089
_Toc167297089
Anchor
_Toc167298178
_Toc167298178
Anchor
_Toc167298269
_Toc167298269
Anchor
_Toc167347900
_Toc167347900
Anchor
_Toc167349641
_Toc167349641
Anchor
_Toc167349755
_Toc167349755
Anchor
_Toc167350046
_Toc167350046
Anchor
_Toc167354011
_Toc167354011
Anchor
_Toc167356406
_Toc167356406
Anchor
_Toc167280513
_Toc167280513
Anchor
_Toc167281157
_Toc167281157
Anchor
_Toc167282687
_Toc167282687
Anchor
_Toc167282737
_Toc167282737
Anchor
_Toc167285248
_Toc167285248
Anchor
_Toc167296888
_Toc167296888
Anchor
_Toc167296749
_Toc167296749
Anchor
_Toc167297090
_Toc167297090
Anchor
_Toc167298179
_Toc167298179
Anchor
_Toc167298270
_Toc167298270
Anchor
_Toc167347901
_Toc167347901
Anchor
_Toc167349642
_Toc167349642
Anchor
_Toc167349756
_Toc167349756
Anchor
_Toc167350047
_Toc167350047
Anchor
_Toc167354012
_Toc167354012
Anchor
_Toc167356407
_Toc167356407
Anchor
_Toc167280514
_Toc167280514
Anchor
_Toc167281158
_Toc167281158
Anchor
_Toc167282688
_Toc167282688
Anchor
_Toc167282738
_Toc167282738
Anchor
_Toc167285249
_Toc167285249
Anchor
_Toc167296889
_Toc167296889
Anchor
_Toc167296750
_Toc167296750
Anchor
_Toc167297091
_Toc167297091
Anchor
_Toc167298180
_Toc167298180
Anchor
_Toc167298271
_Toc167298271
Anchor
_Toc167347902
_Toc167347902
Anchor
_Toc167349643
_Toc167349643
Anchor
_Toc167349757
_Toc167349757
Anchor
_Toc167350048
_Toc167350048
Anchor
_Toc167354013
_Toc167354013
Anchor
_Toc167356408
_Toc167356408
Anchor
_Toc167280515
_Toc167280515
Anchor
_Toc167281159
_Toc167281159
Anchor
_Toc167282689
_Toc167282689
Anchor
_Toc167282739
_Toc167282739
Anchor
_Toc167285250
_Toc167285250
Anchor
_Toc167296890
_Toc167296890
Anchor
_Toc167296751
_Toc167296751
Anchor
_Toc167297092
_Toc167297092
Anchor
_Toc167298181
_Toc167298181
Anchor
_Toc167298272
_Toc167298272
Anchor
_Toc167347903
_Toc167347903
Anchor
_Toc167349644
_Toc167349644
Anchor
_Toc167349758
_Toc167349758
Anchor
_Toc167350049
_Toc167350049
Anchor
_Toc167354014
_Toc167354014
Anchor
_Toc167356409
_Toc167356409
Anchor
_Toc167280516
_Toc167280516
Anchor
_Toc167281160
_Toc167281160
Anchor
_Toc167282690
_Toc167282690
Anchor
_Toc167282740
_Toc167282740
Anchor
_Toc167285251
_Toc167285251
Anchor
_Toc167296891
_Toc167296891
Anchor
_Toc167296752
_Toc167296752
Anchor
_Toc167297093
_Toc167297093
Anchor
_Toc167298182
_Toc167298182
Anchor
_Toc167298273
_Toc167298273
Anchor
_Toc167347904
_Toc167347904
Anchor
_Toc167349645
_Toc167349645
Anchor
_Toc167349759
_Toc167349759
Anchor
_Toc167350050
_Toc167350050
Anchor
_Toc167354015
_Toc167354015
Anchor
_Toc167356410
_Toc167356410
Anchor
_Toc167280517
_Toc167280517
Anchor
_Toc167281161
_Toc167281161
Anchor
_Toc167282691
_Toc167282691
Anchor
_Toc167282741
_Toc167282741
Anchor
_Toc167285252
_Toc167285252
Anchor
_Toc167296892
_Toc167296892
Anchor
_Toc167296753
_Toc167296753
Anchor
_Toc167297094
_Toc167297094
Anchor
_Toc167298183
_Toc167298183
Anchor
_Toc167298274
_Toc167298274
Anchor
_Toc167347905
_Toc167347905
Anchor
_Toc167349646
_Toc167349646
Anchor
_Toc167349760
_Toc167349760
Anchor
_Toc167350051
_Toc167350051
Anchor
_Toc167354016
_Toc167354016
Anchor
_Toc167356411
_Toc167356411
Anchor
_Toc167280518
_Toc167280518
Anchor
_Toc167281162
_Toc167281162
Anchor
_Toc167282692
_Toc167282692
Anchor
_Toc167282742
_Toc167282742
Anchor
_Toc167285253
_Toc167285253
Anchor
_Toc167296893
_Toc167296893
Anchor
_Toc167296754
_Toc167296754
Anchor
_Toc167297095
_Toc167297095
Anchor
_Toc167298184
_Toc167298184
Anchor
_Toc167298275
_Toc167298275
Anchor
_Toc167347906
_Toc167347906
Anchor
_Toc167349647
_Toc167349647
Anchor
_Toc167349761
_Toc167349761
Anchor
_Toc167350052
_Toc167350052
Anchor
_Toc167354017
_Toc167354017
Anchor
_Toc167356412
_Toc167356412
Anchor
_Toc167280519
_Toc167280519
Anchor
_Toc167281163
_Toc167281163
Anchor
_Toc167282693
_Toc167282693
Anchor
_Toc167282743
_Toc167282743
Anchor
_Toc167285254
_Toc167285254
Anchor
_Toc167296894
_Toc167296894
Anchor
_Toc167296755
_Toc167296755
Anchor
_Toc167297096
_Toc167297096
Anchor
_Toc167298185
_Toc167298185
Anchor
_Toc167298276
_Toc167298276
Anchor
_Toc167347907
_Toc167347907
Anchor
_Toc167349648
_Toc167349648
Anchor
_Toc167349762
_Toc167349762
Anchor
_Toc167350053
_Toc167350053
Anchor
_Toc167354018
_Toc167354018
Anchor
_Toc167356413
_Toc167356413
Anchor
_Toc167296756
_Toc167296756
Anchor
_Toc167367451
_Toc167367451
Indhold i filer

Totaludtræk på den Nuværende Datafordeler indeholder normalt hele registerets data, hvor alle registerets entiteter blev fordelt i lister og derefter samlet i én samlet fil. Dette kan ses i venstre side i Figur 6, som indeholder 4 lister med entiteter i. Den Moderniserede Datafordeler tager disse lister der hver især indeholder en entitet og opdeler så disse i hver deres filer i stedet for. Dette kan ses i højre side i Figur 6. Det er altså det samme data der udstilles i filerne sammenlagt, men hvor forskellen er at fildownloads hver især indeholder en delmængde af det samlede registers datasæt.
Image Added

Anchor
_Ref166513331
_Ref166513331
Figur 6: Sammenligning af data i filudtræk og fildownloads.
Den Moderniserede Datafordeler udstiller på denne måde den samme data i fildownloads, som bliver udstillet i filudtræk på den Nuværende Datafordeler, dog med den ændring, at filerne er opdelt per entitet.
Image Added
Anchor
_Ref166513372
_Ref166513372
Figur 7: Sammenligning af data i filudtræk og fildownloads.
Da fildownloads bliver genereret på entitetsniveau, betyder det også at hele entiteten udstilles, og at der ikke filtreres felter fra i det udstillede data, da dette er det samme som det der indlæses på Datafordeleren. Hvis man som anvender gerne vil vide præcis hvilke felter der eksisterer i fildownloads for en given entitet, skal man konsultere registrenes Dataleverancespecifikation (DLS), der i dens Bilag 3 (Opdatering) beskriver hvilke felter hvert registers entiteter består af. Registrenes DLS'er kan hentes her.

Anchor
_Toc167296757
_Toc167296757
Anchor
_Toc167367452
_Toc167367452
Forskelle i GML og GeoPackage filudtræk og fildownloads

I forbindelse med implementering af eksport af GML og GeoPackage fildownloads, er der taget en række design-beslutninger som er forskellige fra de valg som blev truffet da eksport af GML og GeoPackage filudtræk blev designet. Dette resulterer i følgende nævneværdige forskelle i de genererede filer, hvilket er beskrevet i dette afsnit.
Generelle forskelle der gælder for begge filtyper:

  • I filudtræk eksporteres dato-felter i dansk tid. I fildownloads eksporteres dato-felter i UTC.
  • I filudtræk kan der eksistere et felt som indeholder Datafordelerens opdateringstidspunkt for den pågældende database-række. Dette er kun inkluderet i et filudtræk, hvis registeret eksplicit har bestilt dette i deres DLS. Dette felt er altid inkluderet i fildownloads.

Fildownloads udstiller data per-entitet, med samme datamodel som registrene sender til Datafordeleren. Hvis et register i deres DLS for filudtræk har valgt at omdøbe kolonner, lave sammenstillinger mellem tabeller, har beregnede felter, eller lign., vil disse ikke være at finde i fildownloads. Der kan dermed forekomme flere/færre felter i fildownloads, og nogen felter kan have andre navne.
GeoPackage-specifikke forskelle:

  • I filudtræk eksporteres dato-felter til en kolonne defineret med typen DateTime, og er begrænset til millisekund præcision. I fildownloads eksporteres dato-felter til en kolonne defineret med typen TEXT, og er begrænset til mikrosekund præcision, hvor datoen er skrevet i ISO8601 format.

I tilfælde af at registre har brugt karakterer i deres felt- eller entitet-navne som ikke er tilladt af GeoPackage standarden, renses navnene i fildownloads på følgende måde: æ/ø/å udskiftes til hhv. ae/oe/aa, og alle andre ugyldige karakterer udskiftes med _ (en understreg). Dette kan forårsage forskelle, hvis den manuelt definerede rensning som er brugt i filudtræk, ikke er udført på samme måde.
GML-specifikke forskelle:

  • Der er en række mindre forskelle i XSD-skemaerne imellem filudtræk og fildownloads. F.eks. udstilles GML fildownloads med det pågældende registers namespace, hvorimod filudtræk bruger Datafordelerens namespace. Herudover indeholder fildownload XSD-skemaer alle registerets annotationer og type-restriktioner, hvilket ikke er inkluderet i filudtræk XSD-skemaerne.
  • I filudtræk eksporteres dato-felter med op til millisekund præcision. I fildownloads eksporteres dato-felter med op til mikrosekund præcision.
  • I tilfælde af at registre har brugt karakterer i deres felt- eller entitet-navne som ikke er tilladt i XML-standarden, renses navnene i fildownloads ved at skrive disse med XML LocalName encoding reglerne. Dette kan forårsage forskelle, hvis den manuelt definerede rensning som er brugt i filudtræk, ikke er udført på samme måde.

GML "srsName" attributten skrives i filudtræk med den korte form "EPSG:25832" eller "EPSG:4326". I fildownloads bruges URN versionen af EPSG-definitionen, dvs. "urn:ogc:def:crs:EPSG::25832" og "urn:ogc:def:crs:EPSG::4326".

Anchor
_Toc167280522
_Toc167280522
Anchor
_Toc167281166
_Toc167281166
Anchor
_Toc167282696
_Toc167282696
Anchor
_Toc167282746
_Toc167282746
Anchor
_Toc167285257
_Toc167285257
Anchor
_Toc167296897
_Toc167296897
Anchor
_Toc167296758
_Toc167296758
Anchor
_Toc167297099
_Toc167297099
Anchor
_Toc167298188
_Toc167298188
Anchor
_Toc167298279
_Toc167298279
Anchor
_Toc167347910
_Toc167347910
Anchor
_Toc167349651
_Toc167349651
Anchor
_Toc167349765
_Toc167349765
Anchor
_Toc167350056
_Toc167350056
Anchor
_Toc167354021
_Toc167354021
Anchor
_Toc167356416
_Toc167356416
Anchor
_Toc167296759
_Toc167296759
Anchor
_Toc167367453
_Toc167367453
Geografisk filtrering i fildownloads

Følgende afsnit beskriver, hvordan man, som anvender, kan postprocessere fildownloads på forskellige geografiske egenskaber. Man kan lave geografisk filtrering på registerdata ved at filtrere på de egenskaber der ses i Tabel 6. For data, som kan filtreres geografisk, gælder det, at et datapunkt er associeret med:

  • En afledt geografisk identifikator, eksempelvis kommunekode. Et datapunkt kan filtreres på baggrund af denne kode.
  • En geometri, eksempel en polygon med EPSG referencekode. Polygonen kan sammenlignes med en referencegeometri, såsom en kommune, og på baggrund af det geometriske overlap kan datapunktet filtreres.

Såfremt et datapunkt ikke har en reference til nogen af ovennævnte, kan det være tilfældet at datapunktet har en reference til en entitet der er associeret med enten en geometrisk identifikator eller geometri. Det er derfor ikke altid muligt direkte at foretage geografisk filtrering på en entitet uden først at behæfte entiteten med en geografisk identifikator først. Bemærk også at tabellen kun dækker de registre der har fildownloads. Der er i moderniseringens Udviklingsleverance 1 ikke implementeret generisk geografisk filtrering på fildownloads, idet det ville kræve, at Datafordeleren gør sig adskillige antagelser om, hvordan data anvendes i den anden ende. Såfremt disse antagelser ikke stemmer overens med den faktuelle brug, kan Datafordeleren fejlagtigt lave geografiske filtreringer, der er anderledes end anvenderens faktiske behov.

Register

Felt

BBR

Kommunekode

EBR

Kommunekode

MAT

Kommunekode

GeoDanmark Vektor

GeoDanmark kommunepolygon, kommunekode

DAGI

DAGI kommunepolygon

DHM Højdekurver

DAGI kommunepolygon

Anchor
_Ref167282759
_Ref167282759
Anchor
_Ref166673285
_Ref166673285
Anchor
_Ref166673290
_Ref166673290
Tabel 6: Overblik over hvilke geografiske egenskaber der skal filtreres på for forskellige registre.

Anchor
_Toc167296760
_Toc167296760
Anchor
_Toc167367454
_Toc167367454
Anvendereksempel på transition fra filudtræk til fildownloads

Dette eksempel tager udgangspunkt i en anvender der allerede bruger Datafordeleren og henter data fra DAR igennem filudtræk.
Afsnittet giver et eksempel på, hvordan en eksisterende anvender på Datafordeleren kan overgå fra at bruge filudtræk i sit system til at bruge fildownloads. Afsnittet påbegyndes med en situationsbeskrivelse efterfulgt af konkrete trin der beskriver transitionen.

Anchor
_Toc167296761
_Toc167296761
Anchor
_Toc167367455
_Toc167367455
Situationsbeskrivelse

Dette eksempel antager at en anvender allerede har etableret en kopi af DAR og skal i gang med at bruge fildownloads.
Anvenderen har først etableret sin datakopi af DAR ved at opsætte et abonnement på et brugerdefineret totaludtræk fra DAR med følgende parametre:

  • SincePrevious = True
  • RegistreringFra = 2021-03-01
  • VirkningFra = 2021-03-01
  • Format = JSON
  • Dagligt udtræk

Anvenderen henter filudtræk fra Datafordeleren via sin SSH2-tjenestebruger dagligt og indlæser deltafilen i sin datakopi.

Anchor
_Ref166599252
_Ref166599252
Anchor
_Toc167296762
_Toc167296762
Anchor
_Toc167367456
_Toc167367456
Transition

For at anvenderen kan komme i gang med at bruge fildownloads, skal anvenderen vælge mellem 2 muligheder:
Mulighed A) Anvenderen ønsker at etablere en ny datakopi med fildownloads.
Mulighed B) Anvenderen ønsker at indlæse data oveni en eksisterende datakopi med fildownloads.
Anvenderen gør herefter følgende

  1. Anvenderen opretter en tjenestebruger med brugernavn og password på selvbetjeningen.
  2. Anvenderen kalder metoden GetAvailableFiledownloads med sin nye tjenestebruger som følger:
    1. https://api.datafordeler.dk/FileDownloads/GetAvailableFileDownloads?Register=DAR&username=xxxx&password=yyyy
  3. Da anvender nu ved, hvilke fildownloads der eksisterer, kalder anvender metoden GetFile, for at hente totaldownloads for alle entiteter i DAR:
    1. https://api.datafordeler.dk/FileDownloads/GetFile?Register=DAR&username=xxxx&password=yyyy
  4. Anvender er nu i besiddelse af et totaludtræk i DAR. Anvenderen kan nu vælge at sammensætte alle filerne til én stor fil og postprocessere denne, eller postprocessere filerne enkeltvis. Postprocesseringen filtrerer data fra, der har RegistreringFra og VirkningFra ældre end 2021-03-01.
  5. Dette skridt varierer, alt efter om anvenderen valgte mulighed A eller B, som er beskrevet ovenfor:
    1. Hvis anvenderen valgte mulighed A), skal anvenderen etablere sin lokale datakopi ved at indlæse data fra filerne. I dette eksempel har totaludtrækket fra DAR udtræksnummer 14.
    2. Hvis anvenderen valgte mulighed B) i stedet, skal anvender finde forskellen mellem sin lokale datakopi og den data der findes i totaludtrækket fra DAR som anvenderen netop har hentet.

Anvender sætter herefter en vedligeholdelse op af sin datakopi. Vedligeholdelsen består i at hente deltadownloads ind fra DAR, som genereres dagligt. Anvenderen bemærker, at totaludtrækket har udtræksnummer 14, hvilket betyder at anvenderen skal hente deltadownloads fra DAR med udtræksnummer 15 og højere for at sørge for at datakopien holdes opdateret. Anvenderen kalder igen GetAvailableFiledownloads for at se, hvilke deltafiler der findes for DAR.

Dette dokument er en guide i anvendernes transition fra de abonnementsbaserede filudtræk over til entitetsbaserede fildownloads.
Dokumentet er opdelt i to dele:

  1. Første del af dokumentet beskriver hvad fildownloads er, samt hvordan funktionaliteten anvendes.
  2. Anden del af dokumentet forklarer forskelle, samt hvordan anvendere i forskellige situationer kan komme i gang med at anvende fildownloads.

Dokumentet er tiltænkt følgende læsere:

  1. Eksisterende anvendere af Datafordeleren der henter filudtræk på Datafordeleren, som ønsker at komme i gang med at bruge fildownloads i stedet for.
  2. Nye anvendere, der vil i gang med at bruge fildownloads på Datafordeleren.

Table of Contents

Sideinformation

Display Metadata
hidetableheadertrue

Begreber

I dette dokument bruges begreberne i Tabel 1. Bemærk at begreberne også er yderligere forklaret i løbet af dokumentet med eksempler.

...

Beskrivelse

...

Filudtræk

...

Filudtræk er en metode at få udtræk af data fra Datafordeleren. Man kan som anvender logge på selvbetjeningen og oprette et abonnement på et specifikt filudtræk – evt. med brugerdefinerede parametre, hvorefter filen bliver genereret og er tilgængelig på en FTP-server. Filudtræk er beskrevet her.

...

Fildownload

...

Fildownloads beskrives i denne vejledning.

...

Entitet

...

En entitet er fysisk repræsentation af et registerobjekt som findes i Grunddatamodellen.

...

Totaldownload

...

Et totaldownload er et udtræk af alle data for en enkelt entitet og refererer til en enkelt fil.

...

Deltadownload

...

Et deltadownload er et udtræk af alle data der har ændret sig, siden forrige deltadownload blev lavet, for en enkelt entitet. Et deltadownload består af en enkelt fil.

...

Totaludtræk

...

Et totaludtræk er et udtræk af alle data i et register eller en delmængde af et register. Et totaludtræk er udgjort at en eller flere totaldownloads. Et totaludtræk kan således bestå af en eller flere filer, alt afhængigt af hvor stor en delmængde af et register der er tale om.

...

Deltaudtræk

...

Et deltaudtræk er et udtræk af alle data der har ændret sig, siden forrige deltaudtræk blev lavet, i et register eller en delmængde af et register. Et deltaudtræk er udgjort af et eller flere deltadownloads. Et deltaudtræk kan således bestå af en eller flere filer, alt afhængigt af hvor stor en delmængde af et register der er tale om.

Fildownloads

...

  • Register A, som har 5 entiteter. Registerets entiteter refererer til hinanden indbyrdes indenfor registeret og har også en enkelt reference til en entitet i register C udenfor registeret.
  • Register B, som har 6 entiteter. Registerets entiteter refererer til hinanden indbyrdes indenfor registeret og har også en enkelt reference til en entitet i register A udenfor registeret.
  • Register C, som har 6 entiteter. Registerets entiteter refererer til hinanden indbyrdes indenfor registeret.

Registrenes entiteter har alle fildownloads, som både består af totaludtræk og deltaudtræk. Det skal her bemærkes at Register C har fravalgt at der bliver genereret fildownloads for deres entitet nr. 5 og 6 i dette eksempel.

Image Removed

Typer af fildownloads

Datafordeleren udstiller flere typer af entitetsbaserede fildownloads. Der findes 2 typer af fildownloads, nemlig totaldownloads og deltadownloads. Datafordeleren opbevarer ét totaldownload pr. type pr. entitet, mens der opbevares deltaudtræk 14 dage fra de blev genereret.
Hvis der genereres fildownloads for en entitet, bliver der altid genereret både totaldownloads og deltadownloads. Udover at der findes flere typer af fildownloads, findes der også flere typer af filtreringer på den data som de genererede fildownloads indeholder. Dette skyldes at delmængder af data på Datafordeleren er bitemporal og at der dermed kan være flere forekomster af det samme objekt over tid i to tidsdimensioner https://confluence.sdfi.dk/display/DML/Grunddata+-+bitemporalitet.

  • Fuldt bitemporalt fildownload: Et fuldt bitemporalt fildownload inkluderer alt, hvad angår både registreringstid og virkningstid.
  • Temporalt fildownload: Et temporalt fildownload filtrerer registreringsdimensionen fra, men beholder virkningsdimensionen.
  • Fildownload med aktuelle data: Både registreringstiden og virkningstiden er sat til at være på det pågældende tidspunkt fildownload blev lavet.

Det er muligt at kombinere en type fildownload med en type af bitemporal filtrering og filformat. 

Type af fildownload

Type af bitemporal filtrering

Typer af filformater

Totaldownload

Bitemporal

JSON, GML og GPKG

Totaldownload

Temporal

JSON, GML og GPKG

Totaldownload

Aktuel

JSON, GML og GPKG

Deltadownload

Bitemporal

JSON, GML og GPKG

Filformater

Tabel 3 nedenfor viser, hvilke registre der har fildownloads på deres entiteter, samt hvilke filformater der er tilgængelige for registrenes entiteter. Et kryds i en række i tabellen indikerer at filformatet generelt er understøttet for det givne registers entiteter.

...

Register

...

JSON

...

GPKG

...

GML

...

BBR

...

X

...

DAR

...

X

...

EBR

...

X

...

MAT2

...

X

...

X

...

X

...

DAGI

...

X

...

X

...

X

...

DHM Oprindelse

...

X

...

X

...

X

...

DHM Højdekurver

...

X

...

X

...

X

...

Danske Stednavne

...

X

...

X

...

X

...

GeoDanmark Vektor

...

X

...

X

...

X

...

FIKSPUNKT

...

X

...

X

...

X

Tabel 3: Oversigt over understøttede filformater per register.
Det skal bemærkes det ikke er alle entiteter for et register der har fildownloads i GPKG og GML-format, selvom dette er indikeret i Tabel 3. Der skal gøre sig følgende gældende for at en entitet understøttes i GPKG eller GML-format:

  • GPKG-formatet understøttes på en entitet hvis entiteten indeholder 0 eller 1 geometrier.
  • GML-formatet understøttes på en entitet hvis entiteten indeholder minimum 1 geometri.

Udtræksnumre

Udtræksnumre er en fortløbende talrække der beskriver tidsmæssig sammenhæng mellem data i et register. Hver gang der genereres fildownloads for et register, påsættes alle fildownloads ved samme generering det samme udtræksnummer. Dette bevirker at fildownloads med det samme udtræksnummer indeholder konsistente data indenfor registerets egen data. Denne egenskab er særlig relevant hvis man som anvender er interesseret i at sammensætte data fra flere entiteter i et register.
Det er her vigtigt at understrege, at udtræksnumrene kun er fortløbende per register, og at hvert register derfor har sin egen fortløbende talrække, der er uafhængig af andre registre. Udtræksnumre kan derfor ikke garantere referentiel integritet på tværs af registrenes data, da dette afhænger af registrenes indlæsningstidspunkter, samt indlæsningsfrekvens.

Sammenhæng mellem total- og deltaudtræk

Det er muligt at vedligeholde en lokal kopi af registrenes data som findes på Datafordeleren ved at hente totaludtræk – og herefter løbende hente deltaudtræk. Kopien etableres først lokalt, ved at hente et totaldownload for den/de entiteter der er interesse for. Idet totaludtrækket hentes, skal det bemærkes hvilket udtræksnummer totaludtrækket har, da udtræksnummeret skal bruges til at identificere hvilke deltaudtræk der er relevante at hente, for at opdatere den initiale kopi af data. Et totaldownload og deltadownload med det samme udtræksnummer indeholder data fra samme generation. Dette betyder at deltaudtræk med samme udtræksnummer som et totaludtræk indeholder dermed ingen data som ikke også er indeholdt i totaludtrækket. Det udtræksnummer der skal bruges til at opdatere kopien af data, er dermed det næste udtræksnummer i talrækken. Et eksempel på dette kan ses i Figur 2, som viser en række genererede deltaudtræk, samt et genereret totaludtræk. Hver generering har resulteret i, at der enten er blevet genereret et deltaudtræk og/eller et totaludtræk. Det kan ses på figuren, at der eksisterer både et totaludtræk, samt et deltaudtræk med udtræksnummeret 3. Såfremt det ønskes at etablere en kopi af data fra entiteten, kan totaludtrækket med udtræksnummeret 3 først hentes – og så herefter hente deltaudtrækkene med udtræksnummer 4, 5 og 6 for at vedligeholde datakopien. Det er således ikke nødvendigt at hente deltaudtrækket med udtræksnummer 3, da deltaudtrækket blev genereret på samme tid som totaludtrækket. 

Yderligere detaljer og eksempelscenarier kan findes i Kopiregister Guide.

Image Removed

Spring i udtræksnumre

Der kan i sjældne tilfælde forekomme et spring i udtræksnumre. Dette skyldes, at der eksisterer et nyere udtræksnummer for det pågældende register, og at generering af fildownloads, derfor, vil bruge det nyere udtræksnummer for at sikre konsistente data inden for registeret.
Processen for indhentning af deltaudtræk bør, på baggrund af ovenstående, følge følgende logik:

  1. Tjek hvilket udtræksnummer der er påsat senest indhentede deltaudtræk.
  2. Indhent deltaudtræk med udtræksnumre der er større end det sidst indhentede deltaudtræks udtræksnummer.
    1. Dette sikrer at alle nyere deltaudtræk altid hentes uden at der springes nogle over, selvom der sker spring i udtræksnummeret på deltaudtrækkene.

Navngivning af fildownloads

De fildownloads der genereres på Datafordeleren følger alle en navnestandard, der hjælper med at beskrive hvad indholdet af filen er. Navnestandarden ser ud som set på nedenstående figur.

...

  1. DAR_1_Adresse_TotalDownload_JSON_Bitemporal_10.zip
  2. DAR_1_Adresse_DeltaDownload_JSON_Bitemporal_11.zip
  3. BBR_1_Bygning_TotalDownload_JSON_Temporal_123.zip
  4. MAT_1_Lodflade_TotalDownload_GPKG_Current_7.zip
  5. DAGI_1_Kommuneinddeling_TotalDownload_GML_Current_42.zip

...

  1. Fildownload nr. 1 indeholder et fuldt bitemporalt totaludtræk af Adresse-entiteten som ligger i DAR. Filen der downloades er en ZIP-fil, men ZIP-filen indeholder en JSON-fil. Filen har generationsnummer 10.
  2. Fildownload nr. 2 indeholder et fuldt bitemporalt deltaudtræk af Adresse-entiteten som ligger i DAR. Filen der downloades er en ZIP-fil, men ZIP-filen indeholder en JSON-fil. Deltafilen har generationsnummer 11 og ville derfor indeholde alle ændringer der var sket for Adresse-entiteten siden generationsnummer 10. Denne deltafil ville derfor kunne bruges til at opdatere en datakopi der havde indlæst fildownload nr. 1, som har generationsnummer 10.
  3. Fildownload nr. 3 indeholder et temporalt totaludtræk af Bygning-entiteten som ligger i BBR. Filen der downloades er en ZIP-fil, men ZIP-filen indeholder en JSON-fil. Filen har generationsnummer 123.
  4. Fildownload nr. 4 indeholder et totaludtræk med aktuelle data af Lodflade-entiteten som ligger i MAT. Filen der downloades er en ZIP-fil, men ZIP-filen indeholder en GPKG-fil. Filen har generationsnummer 7.
  5. Fildownload nr. 5 indeholder et totaludtræk med aktuelle data af Kommuneinddeling-entiteten som ligger i DAGI. Filen der downloades er en ZIP-fil, men ZIP-filen indeholder en GML-fil. Filen har generationsnummer 42.

Skema for generering af fildownloads

Skemaet i Tabel 3 viser, hvornår der genereres fildownloads for registrene på Datafordeleren. Bemærk at et register kan have frabedt sig, at få genereret fildownloads for bestemte entiteter i deres datamodel og vil således ikke blive genereret efter skemaet.

...

Register

...

Type af fildownload

...

Frekvens for generation

...

EBR

...

Totaludtræk

...

Genereres natten til lørdag mellem kl. 3 og 6

...

Deltaudtræk

...

Genereres dagligt

DAR

...

Totaludtræk

...

Genereres natten til lørdag mellem kl. 3 og 6

...

Deltaudtræk

...

Genereres dagligt

...

BBR

...

Totaludtræk

...

Genereres natten til lørdag mellem kl. 3 og 6

...

Deltaudtræk

...

Genereres dagligt

...

MAT2

...

Totaludtræk

...

Genereres natten til søndag mellem kl. 3 og 6

...

Deltaudtræk

...

Genereres dagligt

...

DAGI

...

Totaludtræk

...

Genereres natten til søndag mellem kl. 3 og 6

...

Deltaudtræk

...

Genereres dagligt

...

GeoDanmark Vektor

...

Totaludtræk

...

Genereres natten til søndag mellem kl. 3 og 6

...

Deltaudtræk

...

Genereres dagligt

...

Danske Stednavne

...

Totaludtræk

...

Genereres natten til mandag mellem kl. 3 og 6

...

Deltaudtræk

...

Genereres dagligt

...

DHM Oprindelse

...

Totaludtræk

...

Genereres natten til mandag mellem kl. 3 og 6

...

Deltaudtræk

...

Genereres dagligt

...

DHM Højdekurver

...

Totaludtræk

...

Genereres natten til mandag mellem kl. 3 og 6

...

Deltaudtræk

...

Genereres dagligt

Fikspunkter

...

Totaludtræk

...

Genereres natten til mandag mellem kl. 3 og 6

...

Deltaudtræk

...

Genereres dagligt

Tabel 4: Oversigt over hvornår fildownloads bliver genereret.
Såfremt der genereres et deltaudtræk, men at der ikke er sket nogle dataændringer siden sidste gang der blev genereret et deltaudtræk for en pågældende entitet, vil deltaudtrækket være tomt. Hvis der genereres et totaludtræk uden at der er sket dataændringer siden sidste gang, det blev genereret, vil det nye totaludtræk i JSON-, GML- eller GPKG-format have et ældre generationsnummer i sit filnavn end den zip-fil den er indeholdt i.
Eksempelvis er det muligt at hente en fil med følgende navn:

  • DAR_1_Adresse_Total_JSON_Bitemporal_10.zip

Her er udtræksnummeret på ZIP-filen 10, men ZIP-filen kan godt indeholde en JSON-fil med følgende navn:

  • DAR_1_Adresse_Total_JSON_Bitemporal_9.json

JSON-filen har et lavere udtræksnummer end ZIP-filen, da der ikke er sket nogen ændringer i data siden sidste totaludtræk blev genereret for Adresse-entiteten. Såfremt der heller ikke sker nogen ændringer i Adresse-entiteten inden næste generering, vil ZIP-filen få udtræksnummer 11, mens den indeholdte JSON-fil stadig vil have udtræksnummer 9.

Sådan hentes fildownloads

...

Image Removed

Metode: GetAvailableFiledownloads

...

Metode: GetAvailableFiledownloads

...

URL

...

https://<env>-api.datafordeler.dk/FileDownloads/GetAvailableFileDownloads?

...

HTTP-metode

...

GET

...

Headere i forespørgsel

...

Content-Type: application/json

...

Format

...

JSON

...

Returværdier

...

Returnerer HTTP 200 – OK, ved succes.
Returnerer HTTP 400 – Bad Request, ved angivelse af forkerte parametre.
Returnerer HTTP 404 – Not Found, hvis den angivne ressource ikke kan findes.
Returnerer HTTP 500 – Internal Server Error, hvis der er sket en ukendt fejl.

...

Adgang

...

Tjenestebruger med brugernavn og password.

...

Dato- og tidsformat

...

Datoformat følger ISO 8601Tidszonen er UTC

Parametre

Navn

Type

Beskrivelse

Valgfri?

Register

String

Begrænser responsen til kun at indeholde fildownloads fra det angivne register. Følgende registre kan angives:

  • DAR
  • DAGI
  • BBR
  • DHM
  • MAT (Der refereres her til Matriklen 2)
  • EBR
  • FIKSPUNKT
  • DS (Danske Stednavne)
  • GeoDKV

Ja

Version

String

Begrænser responsen til kun at indeholde fildownloads der er i den angivne version. Parameteret kan kun angives hvis "Register" parameteret er angivet.

Ja

Entity

String

Begrænser responsen til kun at indeholde fildownloads der er af samme type som den angivne entitet. Parameteret kan kun angives hvis "Register" parameteret er angivet.

Ja

Returværdier

Metoden returnerer metadata om fildownloads, der følger strukturen beskrevet i Tabel 4.

Felt

Beskrivelse

Filename

Navnet på filen som kan downloades.

Register

Angiver hvilket register data i filen tilhører.

EntityName

Angiver navnet på registerentiteten som filens data tilhører.

Frequency

Angiver hvornår/hvor ofte der bliver genereret en ny fil af samme type med nyt udtræksnummer.

TypeOfDownload

Angiver om filen er et totaludtræk eller et deltaudtræk.

TypeOfData

Angiver hvilken bitemporal filtrering der er anvendt på data i filen. Denne kan enten være "Bitemporal", "Temporal" eller "Current".

Version

Angiver underlæggende version af filens data.

GenerationNumber

Angiver udtræksnummeret.

PointInTime

Angiver tidspunkt for registrerings- og virkningstid der blev anvendt ved generering af fildownload. Feltet er kun sat hvis der er tale om et Temporalt eller Current fildownload.
Datoformat følger ISO 8601Tidszonen er UTC

GenerationTime

Angiver tidspunktet for hvornår filen blev genereret. Datoformat følger ISO 8601Tidszonen er UTC

ExpirationDate

Angiver hvornår filen ikke længere udstilles på Datafordeleren.
Datoformat følger ISO 8601Tidszonen er UTC

ContainedFileFormat

Angiver hvilket filformat ZIP-filen indeholder.

OutputFileFormat

Angiver filformatet på selve filen som kan downloades.

Eksempler på brug af metoden

Se tilgængelige fildownloads for DAGI:

...

...

Metode: GetFile

...

Metode: GetFile

...

URL

...

Error! Hyperlink reference not valid.?

...

http-metode

...

GET

...

Headere i forespørgsel

...

Content-Type: application/json

...

Format

...

JSON

...

Returværdier

...

Returnerer http 200 – OK, ved succes.
Returnerer HTTP 400 – Bad Request, ved angivelse af forkerte parametre.
Returnerer HTTP 404 – Not Found, hvis den angivne ressource ikke kan findes eller hvis brugeren ikke har adgang til den angivne fil.
Returnerer HTTP 500 – Internal Server Error, hvis der er sket en ukendt fejl.

...

Adgang

...

Tjenestebruger med brugernavn og password.

...

Dato- og tidsformat

...

Datoformat følger ISO 8601Tidszonen er UTC

Parametre

Navn

Type

Beskrivelse

Valgfri?

Filename

String

Specificerer en specifik fil til download. Dette parameter kan kun angives alene.

Se beskrivelse

Register

String

Specificerer, hvilket register der ønskes download fra. Hvis ikke parametrene 'LatestTotalForEntry' og 'Type' angives, bliver alle registerets totaludtræk downloadet.
Følgende registre kan angives:

  • DAR
  • DAGI
  • BBR
  • DHM
  • MAT (Der refereres her til Matriklen 2)
  • EBR
  • FIKSPUNKT
  • DS (Danske Stednavne)
  • GeoDKV

Se beskrivelse

LatestTotalForEntity

String

Henter det seneste totaludtræk for den specificerede entitet. 'Type' parameteret skal angives, såfremt dette parameter er angivet.

Se beskrivelse

Type

String

Angiver hvilken type fildownload der skal downloades for entiteten. 'LatestTotalForEntity' parameteret skal angives, såfremt dette parameter er angivet.

Se beskrivelse

Format

String

Angiver hvilket filformat der ønskes. Hvis 'LatestTotalForEntity' parameteret er angivet, skal dette parameter også angives.

Se beskrivelse

Version

String

Angiver hvilken version fildownloadet skal være i. Såfremt dette parameter ikke angives, vælges den nyeste version.

Ja

Returværdier

Denne metode returnerer altid en eller flere filer ved HTTP 200 - OK.

Eksempler på brug af metoden

Hent en specifik deltafil fra Danske Stednavne registeret:

...

    1. https://api.datafordeler.dk/FileDownloads/

...

    1. GetAvailableFileDownloads?Register=

...

    1. DAR&

...

    1. username=

...

    1. xxxx&password=

...

    1. yyyy
  1. Anvenderen ser at der findes deltadownloads for samtlige entiteter i DAR med udtræksnumrene 15 og 16. Anvenderen ved derfor, at det vil være nødvendigt at hente alle deltadownloads for alle entiteter i DAR med de ovenstående udtræksnumre. Dette gør anvenderen ved at kalde GetFile for alle entiteterne i DAR med både udtræksnumre 15 og 16

...

  1. :
    1. https://api.datafordeler.dk/FileDownloads

...

    1. /GetFile?Filename=filename&username=xxxx&password=

...

Kaldet returnerer en enkelt fil i en ZIP-fil.

Transition fra filudtræk til fildownloads

Dette afsnit beskriver forskelle mellem abonnementsbaserede filudtræk og prædefinerede entitetsbaserede fildownloads, samt hvordan man som anvender af filudtræk, kan komme i gang med at bruge entitetsbaserede fildownloads i stedet for. Det skal bemærkes at filudtræk og fildownloads driftes parallelt i en periode, så anvendere af Datafordeleren har mulighed for at skifte til fildownloads.
Følgende er blevet observeret for filudtræk, som har dannet grundlaget for målene med den Moderniserede Datafordelers fildownloads:

  • Specificeret enkeltvist af registrene i Dataleverancespecifikationen (DLS https://confluence.sdfi.dk/display/DML/DLS-udstilling). Specificeringen er fordelt over potentielt mange dokumenter og er omkostningsfulde og tager lang tid at implementere og vedligeholde på længere sigt.
  • Implementeringen af filudtrækkene sker altid manuelt.
  • Der er fundet uhensigtsmæssige designvalg i filudtræk, som har medført potentielt datatab og inkonsistens i data.

Moderniseringen introducerer fildownloads, som har følgende egenskaber:

  • Det er ikke nødvendigt at oprette abonnement på fildownloads. Filer bliver genereret løbende og ligger klar til download når der er behov for det.
  • Der er fildownloads for alle entiteter i et register, såfremt registeret ikke har fravalgt at de genereres.
  • Fildownloads specificeres ikke længere manuelt i DLS'en, men genereres automatisk ud fra den datamodel som registeret afleverer til Datafordeleren.
  • Datakonsistens er sikret indenfor registrene selv og sikrer referentiel integritet for at modvirke datatab og inkonsistens i data.

Indhold i filer

Totaludtræk på den Nuværende Datafordeler indeholder normalt hele registerets data, hvor alle registerets entiteter blev fordelt i lister og derefter samlet i én samlet fil. Dette kan ses i venstre side i Figur 5, som indeholder 4 lister med entiteter i. Den Moderniserede Datafordeler tager disse lister der hver især indeholder en entitet og opdeler så disse i hver deres filer i stedet for. Dette kan ses i højre side i Figur 5. Det er altså det samme data der udstilles i filerne sammenlagt, men hvor forskellen er at fildownloads hver især indeholder en delmængde af det samlede registers datasæt.
Image Removed
Figur 5: Sammenligning af data i filudtræk og fildownloads.
Den Moderniserede Datafordeler udstiller på denne måde den samme data i fildownloads, som bliver udstillet i filudtræk på den Nuværende Datafordeler, dog med den ændring, at filerne er opdelt per entitet.
Image Removed
Figur 6: Sammenligning af data i filudtræk og fildownloads.
Da fildownloads bliver genereret på entitetsniveau, betyder det også at hele entiteten udstilles, og at der ikke filtreres felter fra i det udstillede data, da dette er det samme som det der indlæses på Datafordeleren. Hvis man som anvender gerne vil vide præcis hvilke felter der eksisterer i fildownloads for en given entitet, skal man konsultere registrenes Dataleverancespecifikation (DLS), der i dens Bilag 3 (navn på det bilag skal stå her) beskriver hvilke felter hvert registers entiteter består af.

    1. yyyy
  1. Anvenderen holder løbende øje med genereringen af DAR deltadownloads der genereres hver dag og sørger for at hente disse og indlæse dem i deres lokale datakopi.
  2. Anvenderen har nu sat sit system op til at bruge fildownloads.

Image Added

Anchor
_Ref166597487
_Ref166597487
Figur 8: Opsummering af transitionsskridt for en anvender.
Transitionen i ovenstående skridt er opsummeret i Figur 8.

Anchor
_Toc167296763
_Toc167296763
Anchor
_Toc167367457
_Toc167367457
Anvendereksempel på transition med udgangspunkt i kopiregister

Dette eksempel tager udgangspunkt i en anvender som allerede har etableret en kopi af BBR, som skal i gang med at bruge fildownloads.

Anchor
_Toc167296764
_Toc167296764
Anchor
_Toc167367458
_Toc167367458
Situationsbeskrivelse

I dette eksempel henter anvenderen daglige totaludtræk hvor registreringshistorikken ikke er nødvendig, og derfor filtreres fra. Anvenderen har sat følgende abonnement op:

  • SincePrevious = False
  • RegistreringFra = NOW()
  • Format = JSON
  • Dagligt udtræk

Anvenderen bruger en tjenestebruger med brugernavn og password til at tilgå filudtræk.

Anchor
_Toc167296765
_Toc167296765
Anchor
_Toc167367459
_Toc167367459
Transition

  1. Anvenderen kalder metoden GetAvailableFiledownloads med sin eksisterende tjenestebruger som følger:
    1. https://api.datafordeler.dk/FileDownloads/GetAvailableFileDownloads?Register=BBR&username=xxxx&password=yyyy
  2. Da anvender nu ved hvilke fildownloads der eksisterer, kalder anvender nu metoden GetFile for at hente totaldownloads for alle entiteter i BBR:
    1. https://api.datafordeler.dk/FileDownloads/GetFile?Register=BBR&username=xxxx&password=yyyy
  3. Anvender er nu i besiddelse af et totaludtræk af BBR, heriblandt et totaludtræk med temporale data, dvs. registreringshistorikken er filtreret fra. Anvenderen kan nu vælge at sammensætte alle filerne til én stor fil og postprocessere denne, eller postprocessere filerne enkeltvis.
  4. Anvenderen etablerer herefter den samme vedligeholdelsesproces som blev beskrevet i afsnit 4.3.2. Da anvenderen her ikke er interesseret i registreringshistorikken, skal anvender dog huske at postprocessere deltadownloads og filtrere denne historik fra, inden den data indlæses oveni den lokale datakopi.


Anchor
_Toc167296905
_Toc167296905
Anchor
_Toc167296766
_Toc167296766
Anchor
_Toc167297107
_Toc167297107
Anchor
_Toc167298196
_Toc167298196
Anchor
_Toc167298287
_Toc167298287
Anchor
_Toc167347918
_Toc167347918
Anchor
_Toc167349659
_Toc167349659
Anchor
_Toc167349773
_Toc167349773
Anchor
_Toc167350064
_Toc167350064
Anchor
_Toc167354029
_Toc167354029
Anchor
_Toc167356424
_Toc167356424
Anchor
_Toc167296767
_Toc167296767
Anchor
_Toc167367460
_Toc167367460
Bilag 1: FAQ

  1. Er min IP-adresse stadig godkendt?
    1. Ja det er den.
  2. Hvilken zone udstilles fildownloads i?
    1. Fildownloads udstilles i zone 0.
  3. Hvilken type bruger skal jeg bruge for at hente fildownloads?
    1. En tjenestebruger med brugernavn og password er påkrævet for at tilgå fildownloads.
  4. Hvordan hentes fildownloads?
    1. Dette sker ved at kalde REST-API'et der udstiller fildownloads. Se afsnit 2.6 for en uddybende beskrivelse.
  5. Hvilke tidspunkter bliver fildownloads genereret?
    1. Dette sker som udgangspunkt mellem kl. 3 og 6 om natten. Se skemaet i afsnit 2.5 der giver et overblik over hvornår der genereres fildownloads for hvert register.
  6. Er der fildownloads for alle registre?
    1. Nej, det er der ikke. Det er kun de registre som står anført i Tabel 3 som får fildownloads i de filformater der står angivet i tabellen.


Anchor
_Toc167296907
_Toc167296907
Anchor
_Toc167296768
_Toc167296768
Anchor
_Toc167297109
_Toc167297109
Anchor
_Toc167298198
_Toc167298198
Anchor
_Toc167298289
_Toc167298289
Anchor
_Toc167347920
_Toc167347920
Anchor
_Toc167349661
_Toc167349661
Anchor
_Toc167349775
_Toc167349775
Anchor
_Toc167350066
_Toc167350066
Anchor
_Toc167354031
_Toc167354031
Anchor
_Toc167356426
_Toc167356426
Anchor
_Toc167280531
_Toc167280531
Anchor
_Toc167281175
_Toc167281175
Anchor
_Toc167282705
_Toc167282705
Anchor
_Toc167282755
_Toc167282755
Anchor
_Toc167285266
_Toc167285266
Anchor
_Toc167296908
_Toc167296908
Anchor
_Toc167296769
_Toc167296769
Anchor
_Toc167297110
_Toc167297110
Anchor
_Toc167298199
_Toc167298199
Anchor
_Toc167298290
_Toc167298290
Anchor
_Toc167347921
_Toc167347921
Anchor
_Toc167349662
_Toc167349662
Anchor
_Toc167349776
_Toc167349776
Anchor
_Toc167350067
_Toc167350067
Anchor
_Toc167354032
_Toc167354032
Anchor
_Toc167356427
_Toc167356427
Anchor
_Toc167280532
_Toc167280532
Anchor
_Toc167281176
_Toc167281176
Anchor
_Toc167282706
_Toc167282706
Anchor
_Toc167282756
_Toc167282756
Anchor
_Toc167285267
_Toc167285267
Anchor
_Toc167296909
_Toc167296909
Anchor
_Toc167296770
_Toc167296770
Anchor
_Toc167297111
_Toc167297111
Anchor
_Toc167298200
_Toc167298200
Anchor
_Toc167298291
_Toc167298291
Anchor
_Toc167347922
_Toc167347922
Anchor
_Toc167349663
_Toc167349663
Anchor
_Toc167349777
_Toc167349777
Anchor
_Toc167350068
_Toc167350068
Anchor
_Toc167354033
_Toc167354033
Anchor
_Toc167356428
_Toc167356428
Anchor
_Toc167296771
_Toc167296771
Anchor
_Toc167367461
_Toc167367461
Bilag 2: Overførsel af filudtræk til fildownloads

Filudtræk

Tilsvarende fildownloads

Sammenligning mellem nuværende og moderne GML og Geopackage filer

Dette afsnit er under udarbejdelse ifm. Story 537: Functional scenarios 537: Udvidet sammenligning af eksisterende og moderne GML og geopackage filer til inklusion af transitionsguiden.

Geografisk filtrering i fildownloads

Følgende afsnit beskriver, hvordan man, som anvender, kan postprocessere fildownloads på forskellige geografiske egenskaber. Man kan lave geografisk filtrering på registerdata ved at filtrere på de egenskaber der ses i Tabel 5. For data, som kan filtreres geografisk, gælder det, at et datapunkt er associeret med:

  • En afledt geografisk identifikator, e.g. kommunekode. Et datapunkt kan filtreres på baggrund af denne kode.
  • En geometri, i.e. en polygon med EPSG referencekode. Polygonen kan sammenlignes med en referencegeometri, e.g. en kommune, og på baggrund af det geometriske overlap kan datapunktet filtreres.

Såfremt et datapunkt ikke har en reference til nogen af ovennævnte, kan det være tilfældet at datapunktet har en reference til en entitet der er associeret med enten en geometrisk identifikator eller geometri. Det er derfor ikke altid muligt direkte at foretage geografisk filtrering på en entitet uden først at behæfte entiteten med en geografisk identifikator først. Bemærk også at tabellen kun dækker de registre der har fildownloads. Der er i moderniseringens Udviklingsleverance 1 ikke implementeret generisk geografisk filtrering på fildownloads, idet det ville kræve, at Datafordeleren gør sig adskillige antagelser om, hvordan data anvendes i den anden ende. Såfremt disse antagelser ikke stemmer overens med den faktuelle brug, kan Datafordeleren fejlagtigt lave geografiske filtreringer, der er anderledes end anvenderens faktiske antagelse.

Register

Felt

BBR

Kommunekode

EBR

Kommunekode

MAT

Kommunekode

GeoDanmark Vektor

GeoDanmark kommunepolygon, kommunekode

DAGI

DAGI kommunepolygon

DHM Højdekurver

DAGI kommunepolygon

Tabel 6: Overblik over hvilke geografiske egenskaber der skal filtreres på for forskellige registre.

Eksempel på transition hos en anvender

Dette afsnit giver et eksempel på, hvordan en eksisterende anvender på Datafordeleren kan overgå fra at bruge filudtræk i sit system til at bruge fildownloads. Afsnittet påbegyndes med en situationsbeskrivelse efterfulgt af konkrete trin der beskriver transitionen.

Situationsbeskrivelse

Dette eksempel antager at en anvender allerede har etableret en kopi af DAR og skal i gang med at bruge fildownloads.
Anvenderen har først etableret sin datakopi af DAR ved at opsætte et abonnement på et brugerdefineret totaludtræk fra DAR med følgende parametre:

  • SincePrevious = True
  • RegistreringFra = 2021-03-01
  • VirkningFra = 2021-03-01
  • Format = JSON
  • Dagligt udtræk

Anvenderen henter filudtræk fra Datafordeleren via sin SSH2-tjenestebruger dagligt og indlæser deltafilen i sin datakopi.

Transition

For at anvenderen kan komme i gang med at bruge fildownloads, skal anvenderen beslutte om:

  1. Anvenderen ønsker at etablere en ny datakopi med fildownloads.
  2. Anvenderen ønsker at indlæse data oveni en eksisterende datakopi med fildownloads.

Anvenderen gør herefter følgende

  1. Anvenderen opretter en tjenestebruger med brugernavn og password på selvbetjeningen.
  2. Anvenderen kalder metoden GetAvailableFiledownloads med sin nye tjenestebruger som følger:
    1. https://api.datafordeler.dk/FileDownloads/GetAvailableFileDownloads?Register=DAR&username=username&password=password
  3. Da anvender nu ved, hvilke fildownloads der eksisterer, kalder anvender metoden GetFile, for at hente totaludtræk for alle entiteter i DAR:
    1. https://api.datafordeler.dk/FileDownloads/GetFile?Register=DAR&username=username&password=password
  4. Anvender er nu i besiddelse af et totaludtræk i DAR. Anvenderen kan nu vælge at sammensætte alle filerne til én stor fil og postprocessere denne, eller postprocessere filerne enkeltvis. Postprocesseringen filtrerer data fra, der har RegistreringFra og VirkningFra ældre end 2021-03-01.
  5. Hvis anvenderen valgte mulighed A), skal anvenderen etablere sin lokale datakopi ved at indlæse data fra filerne. I dette eksempel har totaludtrækket fra DAR udtræksnummer 14.
    1. Hvis anvenderen valgte mulighed B) i stedet, skal anvender finde forskellen mellem sin lokale datakopi og den data der findes i totaludtrækket fra DAR som anvenderen netop har hentet.
  6. Anvender sætter herefter en vedligeholdelse op af sin datakopi. Vedligeholdelsen består i at hente deltaudtræk ind fra DAR, som genereres dagligt. Anvenderen bemærker, at totaludtrækket har udtræksnummer 14, hvilket betyder at anvenderen skal hente deltaudtræk fra DAR med udtræksnummer 15 og højere for at sørge for at datakopien holdes opdateret. Anvenderen kalder igen GetAvailableFiledownloads for at se, hvilke deltafiler der findes for DAR.
    1. https://api.datafordeler.dk/FileDownloads/GetAvailableFileDownloads?Register=DAR&username=username&password=password
  7. Anvenderen ser at der findes deltaudtræk for samtlige entiteter i DAR med udtræksnumrene 15 og 16. Anvenderen ved derfor, at det vil være nødvendigt at hente alle deltaudtræk for alle entiteter i DAR med de ovenstående udtræksnumre. Dette gør anvenderen ved at kalde GetFile for alle entiteterne i DAR med både udtræksnumre 15 og 16:
    1. https://api.datafordeler.dk/FileDownloads/GetFile?Filename=filename&username=username&password=password
  8. Anvenderen holder løbende øje med genereringen af DAR deltaudtræk der genereres hver dag og sørger for at hente disse og indlæse dem i deres lokale datakopi.
  9. Anvenderen har nu sat sit system op til at bruge fildownloads.

...

Eksempel på anden transition hos anvender

Dette eksempel tager udgangspunkt i en anvender som allerede har etableret en kopi af BBR, som skal i gang med at bruge fildownloads.

Situationsbeskrivelse

I dette eksempel henter anvenderen daglige totaludtræk hvor registreringshistorikken ikke er nødvendig, og derfor filtreres fra. Anvenderen har sat følgende abonnement op:

  • SincePrevious = False
  • RegistreringFra = NOW()
  • Format = JSON
  • Dagligt udtræk

Anvenderen bruger en tjenestebruger med brugernavn og password til at tilgå filudtræk.

Transition

  1. Anvenderen kalder metoden GetAvailableFiledownloads med sin eksisterende tjenestebruger som følger:
    1. https://api.datafordeler.dk/FileDownloads/GetAvailableFileDownloads?Register=BBR&username=username&password=password
  2. Da anvender nu ved hvilke fildownloads der eksisterer, kalder anvender nu metoden GetFile for at hente totaludtræk for alle entiteter i BBR:
    1. https://api.datafordeler.dk/FileDownloads/GetFile?Register=BBR&username=username&password=password
  3. Anvender er nu i besiddelse af et totaludtræk af BBR, heriblandt et totaludtræk med temporale data, dvs. registreringshistorikken er filtreret fra. Anvenderen kan nu vælge at sammensætte alle filerne til én stor fil og postprocessere denne, eller postprocessere filerne enkeltvis.
  4. Anvenderen etablerer herefter den samme vedligeholdelsesproces som blev beskrevet i afsnit 3.3.2. Da anvenderen her ikke er interesseret i registreringshistorikken, skal anvender dog huske at postprocessere deltaudtrækkene og filtrere denne historik fra, inden den data indlæses oveni den lokale datakopi.

Bilag 1 - FAQ

  1. Er min IP-adresse stadig godkendt?
    1. Ja det er den.
  2. Hvilken zone udstilles fildownloads i?
    1. Fildownloads udstilles i zone 0.
  3. Hvilken type bruger skal jeg bruge for at hente fildownloads?
    1. En tjenestebruger med brugernavn og password er påkrævet for at tilgå fildownloads.
  4. Hvordan hentes fildownloads?
    1. Dette sker ved at kalde REST-API'et der udstiller fildownloads. Se afsnit 2.6 for en uddybende beskrivelse.
  5. Hvilke tidspunkter bliver fildownloads genereret?
    1. Dette sker som udgangspunkt mellem kl. 3 og 6 om natten. Se skemaet i afsnit 2.5 der giver et overblik over hvornår der genereres fildownloads for hvert register.
  6. Er der fildownloads for alle registre?
    1. Nej, det er der ikke. Det er kun de registre som står anført i Tabel 2 som får fildownloads i de filformater der står angivet i tabellen.
  7. Skal jeg, som register, foretage mig noget for at få fildownloads på mine data?
    1. Som register kræves det at JSON-filen "Automated_Predefined_Filedownloads.json" er udfyldt korrekt i DLS'en.

Bilag 2 – Overførsel af filudtræk til fildownloads

...

Hidtil filudtræk

...

BBR-Aktuelt-Totaludtraek_HF

BBR_TotalDownload_Current for alle entiteter i BBR

BBR-Totaludtraek_HF

BBR_TotalDownload_Bitemporal for alle entiteter I BBR

DAGI10MULTIGEOM

DAGI_TotalDownload_Current for alle entiteter hvor skala er 1:10.000

DAGI10MULTIGEOMHIST

DAGI_TotalDownload_Bitemporal for alle entiteter hvor skala er 1:10.000

DAGI10MULTIGEOMHIST_HF

DAGI_TotalDownload_Bitemporal for alle entiteter hvor skala er 1:10.000

DAGI10MULTIGEOM_HF

DAGI_TotalDownload_Current for alle entiteter hvor skala er 1:10.000

DAGI2000MULTIGEOM

DAGI_TotalDownload_Current for alle entiteter hvor skala er 1:2.000.000

DAGI2000MULTIGEOM_HF

DAGI_TotalDownload_Current for alle entiteter hvor skala er 1:2.000.000

DAGI250MULTIGEOM

DAGI_TotalDownload_Current for alle entiteter hvor skala er 1:250.000

DAGI250MULTIGEOM_HF

DAGI_TotalDownload_Current for alle entiteter hvor skala er 1:250.000

DAGI500MULTIGEOM

DAGI_TotalDownload_Current for alle entiteter hvor skala er 1:500.000

DAGI500MULTIGEOM_HF

DAGI_TotalDownload_Current for alle entiteter hvor skala er 1:500.000

DAR-Aktuelt-Totaludtraek_HF

DAR_TotalDownload_Current for alle entiteter I DAR

DAR-Totaludtraek_HF

DAR_TotalDownload_Bitemporal for alle entiteter I DAR

DHMhoejdekurver025

DHM_ referencekurve025_TotalDownload_Temporal

DHMhoejdekurver025_HF

DHM_ referencekurve025_TotalDownload_Temporal

DHMhoejdekurver050

DHM_ formkurve05_TotalDownload_Temporal

DHMhoejdekurver050_HF

DHM_ formkurve05_TotalDownload_Temporal

DHMhoejdekurver250

DHM_ formkurve25_TotalDownload_Temporal

DHMhoejdekurver250_HF

DHM_ formkurve25_TotalDownload_Temporal

DHMhoejdekurverekstrempunkter

DHM_kote05_TotalDownload_Current
DHM_kote25_TotalDownload_Current

DHMhoejdekurverekstrempunkter_HF

DHM_kote05_TotalDownload_Current
DHM_kote25_TotalDownload_Current

DHMoprindelseKorrektion

DHM_korrektionsegne_Bitemporal med GeoDK Soe-entiteten

DHMoprindelseKorrektion_HF

DHM_korrektionsegne_Bitemporal med GeoDK Soe-entiteten

DHMoprindelsePunktoprindelse

DHM_punktoprindelse_Bitemporal

DHMoprindelsePunktoprindelse_HF

DHM_punktoprindelse_Bitemporal

DKstednavneBearbejdedeNohist

DS_TotalDownload_Current for alle entiteter

DKstednavneBearbejdedeNohist_HF

DS_TotalDownload_Current for alle entiteter

EBREjendomsbeliggenhedSimpel_HF

EBR_TotalDownload_Current for alle entiteter

EBREjendomsbeliggenhed_HF

EBR_TotalDownload_Bitemporal for alle entiteter

GeoDanmark60

GeoDKV_TotalDownload_Temporal for alle entiteter

GeoDanmark60HIST

GeoDKV_TotalDownload_Bitemporal for alle entiteter

GeoDanmark60HISTKommune_HF

GeoDKV_TotalDownload_Temporal for alle entiteter med geografisk filtrering på relevant kommune

GeoDanmark60HISTRegion_HF

GeoDKV_TotalDownload_Temporal for alle entiteter med geografisk filtrering på relevant region

GeoDanmark60HIST_HF

GeoDKV_TotalDownload_Bitemporal for alle entiteter

GeoDanmark60_HF

GeoDKV_TotalDownload_Temporal for alle entiteter

GeoDanmark60bruger

GeoDKV_TotalDownload_Bitemporal for alle entiteter

GeoDanmark60bruger_HF

GeoDKV_TotalDownload_Bitemporal for alle entiteter

MATkortdataGaeldendeDKComplete_GML

MAT_Totaldownload_Current for alle entiteter med tilknyttet jordstykke pr. entitet

MATkortdataGaeldendeDKComplete_GPKG

MAT_Totaldownload_Current for alle entiteter med tilknyttet jordstykke pr. entitet

MATkortdataGaeldendeKommuneComplete_GML

MAT_Totaldownload_Current for alle entiteter med tilknyttet jordstykke pr. entitet og med geografisk filtrering

MATkortdataGaeldendeKommuneComplete_GPKG

MAT_Totaldownload_Current for alle entiteter med tilknyttet jordstykke pr. entitet og med geografisk filtrering

MATregisterdataTotalUdtraek

MAT_TotalDownload_Bitemporal for alle entiteter