Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Current »



Denne side beskriver adgangen til og den tekniske distribution af filudtræk, som er gældende for alle registre på Datafordeleren, der udstiller data med filudtræk.

Filudtræk giver brugeren mulighed for at downloade data fra Datafordeleren. Det er den enkelte registermyndighed, der beslutter, hvilke data myndigheden stiller til rådighed som filudtræk.








Tidsparametre

Registreringstid

Alle forekomster registreres i databasen med en registreringstid, bestående af to tidsstempler - et fra-timestamp og et til-timestamp. Fra-timestamp er inklusiv, og til-timestamp er eksklusiv.

Registreringstiden er tidsrummet fra versionen registreres til den enten erstattes af en nyere version eller afregistreres (logisk slettes). Registreringstiden er således fortløbende for et givent forretningsobjekt.

Der kan over tid eksistere flere forekomster med samme identifikation, virkningstid og objektstatus. Her vil registreringstid afgøre, hvilken der er/var gældende på et givet tidspunkt.

Virkningstid

Alle forekomster registreres i databasen med en virkningstid bestående af to tidsstempler - et fra- timestamp og et til-timestamp. Fra-timestamp er inklusiv, og til-timestamp er eksklusiv.

Virkningstid kan oprettes i fortiden, nutiden eller fremtiden.

Der skal kun være én gældende virkningstid for en given objektstatus på et givet tidspunkt.

Virkningstid må ikke være overlappende for samme registreringstid og objektstatus.

Datafordeler timestamp

For nogle tjenester er det muligt at angive DAFTimestampFra og DAFTimestampTil.

Datafordeler timestamp er et tidsparameter for, hvornår data er indlæst eller opdateret på Datafordeleren modsat fx. RegistreringTil der er et tidsparameter for hvornår data er registreret i et register.

Parametrene er klokkeslæt ud fra formen ”hh:mm:{ss}.{ssssss}Z|+hh:mm”, hvor sekunder og millisekunder kan udelades.

Datafordeler timestamp anvendes til at fremsøge ændringer siden et givet tidspunkt, for eksempel til opdatering af kopi-registre eller som kontrol af, at alle relevante hændelser er håndteret korrekt. Bemærk, at Datafordeler timestamp kan ikke bruges til at håndtere bitemporalitet. 




Prædefineret filudtræk

Ved prædefinerede filudtrækstjenester er udtrækket generet på forhånd, og specificeringen af udtrækket er givet på forhånd. Der kan hentes data i på forhånd genererede filudtræk, som produceres og udstilles efter et givent interval fastsat af registermyndigheden fx ugentligt eller kvartalsvis. Filformater vil være et eller flere af de mulige formater (XML, JSON, GIS formater). For geodata vil der desuden være valgt projektion på forhånd. 

Fordelen ved prædefinerede filudtræk er, at udtrækkene kun skal dannes én gang, hvilket nedsætter procestiden for en bruger. Tiden det tager at få et udtræk er derfor kun, den tid det tager for brugerens system at hente filen.

For de tjenester der kan tilgås uden brugeroprettelse, er det ikke muligt at abonnere på prædefinerede filudtræk, i stedet kan man ”abonnere” på feeds ved hjælp af en browser eller feedreader. I Dataoversigten på Datafordelerens hjemmeside vises Atom feedet for det anonyme filudtræk, hvor det er muligt at se informationer om placeringen af filudtrækket. Det er ikke muligt at downloade denne type filudtræk direkte fra Selvbetjeningen. 

Prædefinerede filudtræk der er frit tilgængelige uden brugeroprettelse kan hentes i en fælles FTP folder eller via HTTP.


Særligt for udtrækkene af typen Complete og DeltaDaily

For en række udvalgte tjenester har Datafordeleren lavet en række prædefinerede tjenester, hvor et ugentlig totaludtræk kan kombineres med daglige ændringer. Udtræk leveres i ét standardudtræk, som er tilgængeligt på samme tidspunkt, som det er muligt at abonnere på.

Der er tale om tjenester på ejendoms- og adresseområdet, som har særlig høj anvendelse. Det er samtidig nogle tjenester, hvor det forventes at mange brugere vil have samme anvendelsesmønster.

Følgende registre er omfattet:

  • Matriklen
  • EBR 
  • VUR
  • BBR 
  • EJF 
  • DAR 

Der er derfor oprettet to typer prædefinerede filudtræk: Complete og DeltaDaily. Ved Complete får du ugentligt et fuldt totaludtræk af registeret, og ved DeltaDaily modtager du daglige opdateringer.


Hvad indeholder leverancen i et abonnement på et prædefineret filudtræk?

Når du har oprettet et abonnement på et prædefineret filudtræk, vil du med det samme modtage det senest oprettede filudtræk. Er det prædefineret filudtræk ikke tidligere blevet dannet, vil du modtage det, når det er blevet dannet af systemet.

Vælger du fx at tegne et abonnement på et ugentlig filudtræk om onsdagen, vil du modtage det senest dannede filudtræk. Filudtræk dannes om søndagen og vil senest blive leveret mandag tidlig morgen.

Du kan læse under den registerspecifikke dokumentation, hvad opdateringstiden er for den enkelte tjeneste.


Opbygge kopi

Prædefinerede filudtræk er en fordel for fx de brugere, der skal opbygge en kopi. I det tilfælde er der behov for et etableringsudtræk i form af et totaludtræk efterfulgt af daglige opdateringer. Der dannes én gang ugentligt et totaludtræk. Sideløbende vil der dagligt dannes deltaudtræk, hvilket også omfatter de dage der generes totaludtræk.

Skal du opbygge en kopi, skal du både oprette et abonnement på de tjenester, der hedder Complete, samt de tjenester der hedder DeltaDaily. For at opbygge en kopi skal du oprette abonnement på delta først. Dernæst skal du oprette abonnement på complete, som er tilgængelig hver mandag. For at få en fuld kopi skal du kombinere data i deltafilen fra søndag med totaludtrækket og deltafilen for mandag.

Hvis du kun ønsker at modtage et totaludtræk én gang, skal du slette abonnementet efter du har modtaget den første fil.

Når du skal behandle data, skal du sortere på registreringstid frem for datafordeler timestamp (DAFTimestamp).


Navngivning af prædefinerede filudtræk

Normalt er filen, som bliver genereret, baseret på abonnementsnavnet. Det er ikke tilfældet for prædefinerede filudtræk. For prædefinerede filudtræk er filnavnet givet af systemet og ikke baseret på abonnementsnavnet, som andre typer af filudtræk.

Abonnementsnavn DARDailyJSON-v01, som er et prædefineret udtræk af en fil DAR_Totaludtraek_DeltaDaily_JSON, vil resulterer i en fil, som hedder DAR_Totaludtraek_DeltaDaily_JSON_20191024210021.zip

I det første prædefinerede udtræk refererer tidspunktet i filnavnet til det tidspunkt, hvor dit abonnement er blevet oprettet. I de efterfølgende leverancer vil tidspunktet i navngivningen referere til det tidspunkt, hvor udtrækket er blevet dannet.


Since Previous og de prædefinerede filudtræk

Since Previous er altid sat for prædefinerede daglige filudtræk. Det har derfor ingen betydning for udtrækket, at man fjerner fluebenet i sit abonnement.

Indholdet i leverance er fra det senest dannede filudtræk. Det vil sige, at indholdet i deltafilen altid vil indeholde alle opdateringer siden sidste deltaopdatering blev dannet.





Default tidsparametre på ejendoms- og adresseområdet

Nedenstående tabel giver et overblik over defaultværdierne for tidsparametre på de prædefinerede filudtræk på ejendoms- og adresseområdet. 

Indholdet i de de prædefinerede filudtræk bliver forklaret nærmere i dokumentationen for de enkelte filudtræk - klik på linket på tjenesten for at læse beskrivelserne.



Filudtræk


Register

INTERVAL

VirkningstidFra - VirkningstidTil

TIDSPUNKT

Virkningstid

INTERVAL

RegistreringstidFra - RegistreringstidTil

TIDSPUNKT

Registreringstid

INTERVAL

DAFTimeStampFra - DAFTimeStampTil

INTERVAL

PeriodeaendringFra -PeriodeaendringTil

TIDSPUNKT

KunNyesteIPeriode

BBR TotaludtrækBBRNULL - NULLIkke muligtNULL - NULLIkke muligtNULL - NOW()Ikke muligtIkke muligt
BBR Aktuelt TotaludtrækBBRNOW() - NOW()Ikke muligtNOW() - NOW()Ikke muligtNULL - NOW()Ikke muligtIkke muligt

DAR Totaludtræk

DARNULL - NULLIkke muligtNULL - NULLIkke muligtNULL - NOW()Ikke muligtIkke muligt
DAR Aktuelt TotaludtrækDARNOW() - NOW()Ikke muligtNOW() - NOW()Ikke muligtNULL - NOW()Ikke muligtIkke muligt

Ejendomsbeliggenhed

EBRIkke muligtNOW()Ikke muligtNOW()NULL - NOW()Ikke muligtIkke muligt
Ejendomsbeliggenhed SimpelEBRNULLNOW()NULL - NULLNOW()NULL - NOW()Ikke muligtIkke muligt
EjendomsvurderingFiludtrækVURIkke muligtIkke muligtIkke muligtIkke muligtNULL - NOW()NULL - NULLFALSK
Ejerfortegnelsen Totaludtræk FladEJFNULL - NULLNOW()NULL - NULLNOW()NULL - NOW()Ikke muligtIkke muligt
Ejerfortegnelsen Fortrolig Totaludtræk FladEJFNULL - NULLNOW()NULL - NULLNOW()NULL - NOW()Ikke muligtIkke muligt
MUTotalUdtraekFladMATNULL - NULLNOW()NULL - NULLNOW()NULL - NOW()Ikke muligtIkke muligt




Brugerdefineret filudtræk

I et brugerdefineret udtræk er der mulighed for at angive en række parametre (eksempelvis geografisk udstrækning, format, projektion, registreringstid med mere). Udtrækslogikken og formater af data vil være specificeret på forhånd af registret.

For brugerdefinerede udtræk er det muligt at downloade enkelte udtræk ad hoc eller opsætte et fast abonnement på et filudtræk. Du modtager en e-mail, når Datafordeleren har genereret nye filer på dit abonnement eller når dit ad hoc udtræk er færdigt. E-mailen bliver sendt til din webbruger. 

Brugerdefinerede filudtræk placeres på en FTP-server, og du kan hente dem via den FTP-klient, du har har valgt med brugernavn og password. Hvis data er følsomme skal din tjenestebruger være tilknyttet en SSH2-nøgle, og du vil kunne hente filerne med Secure FTP (SFTP) .

Ønsker du at hente alle data på en SFTP server, skal du oprette alle abonnementer med en tjenestebruger, der er tilknyttet en SSH2-nøgle. Dette gælder også for abonnementer på data der ikke er følsomme eller personhenførbare. 


Deltafiler

For nogle tjenester er det muligt at abonnere på deltafiler ved brug af funktionen "Since Previous". Her vil der kun returneres data, som har en Datafordeler-registreringstid lig med eller senere end det tidspunkt, hvor det samme filudtræk senest er genereret til den pågældende abonnent. Det vil sige, at der i abonnementet fremsøges data, som er opdateret på Datafordeleren siden den foregående generering af det tilsvarende filudtræk på samme abonnement. Der vil altid blive dannet en fil, også selvom der ikke har været opdateringer i registeret i perioden, i så fald vil filen være tom.

Tidsstemplet for seneste udtræk, vises som metadata for abonnementet i Selvbetjeningen. 

Deltafiler vælges ved en checkboks med "Since Previous" i Selvbetjeningen. 


Skedulering af filudtræk

Der er mulighed for at bestemme, hvornår et filudtræk ønskes eksekveret, ved at angive dag og klokkeslet for fremstillingen. Skeduleringen angives ved oprettelse af ad hoc udtræk eller abonnement.





Endpoint, folder og filplacering

Nedenstående tabel angiver foldernavn/placering og http(s) url for de forskellige filudtrækstyper:


FiludtrækstypePlacering eller url
Placering af frit tilgængelige filudtræk i zone 0\\<FTP endpoint>\DD1FTPUpdateAreaS0\public
Url for frit tilgængelige filudtræk der hentes med http i zone 0http(s)://services.datafordeler.dk/system/file/1/public?filename=<filnavn>

Placering af abonnements-baserede filudtræk for kendte adgang og godkendt adgang i zone 0

\\<FTP endpoint>\DD1FTPUpdateAreaS0\<bruger>
Placering af abonnements-baserede filudtræk for kendt adgang og godkendt adgang i zone 5\\<FTP endpoint>\DD1FTPUpdateAreaS5\<bruger>


Connectivity til FTP folderen kan først opnås når tjenestebrugeren har oprettet et abonnement på et filudtræk, da folderen først oprettes i det øjeblik der genereres et filudtræk.




Sletning af abonnement

Hvis du ikke har behov for at bruge et aktivt abonnement længere, skal du slette abonnementet i Selvbetjeningen. Abonnementer bliver ikke automatisk slettet.




Metadatafil i FTP/SFTP

Der leveres altid en metadatafil med et filudtræk på FTP/SFTP serveren. 

I tilfælde hvor der ikke er data i filudtrækket, leveres der stadig en udtræksfil samt en metadatafil.

Vær opmærksom på, at metadatafilen for de prædefinerede filudtræk ikke er opbygget på samme måde, som de brugerdefinerede filudtræk på følgende parametre.

  • Leverancenavn er systemgenereret
  • Abonnementsoplysninger er systemgenereret


Eksempel på struktur for metadataskema for prædefineret filudtræk
{
"leveranceNavn":"DAR_Totaludtraek_DeltaDaily_JSON_20191029210001.json",
"miljoe":"PROD01",
"fortroligData":"Nej",
"dataOmfattetAfPersondataloven":"Nej",
"MD5CheckSum":"9b5200c03a65d72b40c28d9f91a6d7c2",
"DatafordelerUdtraekstidspunkt": [
{
"deltavindueStart":"2019-10-28T21:00:00.867+01:00",
"deltavindueSlut":"2019-10-29T21:00:01.068+01:00"}],
"tilgaengelighedsperiode":30,
"AbonnementsOplysninger": [
{
"webBrugernavn":"PREDEFINED",
"tjenesteBrugernavn":"PREDEFINED",
"abonnementnavn":"DAR Totaludtraek DeltaDaily JSON",
"tjenestenavn":"DAR-Totaludtraek",
"tjenesteversion":"1.0.1",
"oprettelsesdato":"2019-10-23T15:48:16.924+02:00",
"senesteAbonnementRedigeringsdato":"2019-10-23T15:48:16.924+02:00",
"gentagelsesinterval":"Dagligt"}],
"BrugerUdfyldteParametre": [
{
"parameternavn":"Status",
"parametervaerdi":"NULL"},
{
"parameternavn":"DAFTimestampTil",
"parametervaerdi":"2019-10-29T21:00:01.068+01:00"},
{
"parameternavn":"executionTimestamp",
"parametervaerdi":"2019-10-29T21:00:01.068+01:00"},
{
"parameternavn":"VirkningFra",
"parametervaerdi":"NULL"},
{
"parameternavn":"RegistreringFra",
"parametervaerdi":"NULL"},
{
"parameternavn":"VirkningTil",
"parametervaerdi":"NULL"},
{
"parameternavn":"SincePrevious",
"parametervaerdi":"true"},
{
"parameternavn":"DAFTimestampFra",
"parametervaerdi":"NULL"},
{
"parameternavn":"output_format",
"parametervaerdi":"json"},
{
"parameternavn":"RegistreringTil",
"parametervaerdi":"NULL"},
{
"parameternavn":"lastExecutedTimestamp",
"parametervaerdi":"2019-10-28T21:00:00.867+01:00"}]}


Åben eksempel på metadatafil i en browser


Struktur for metadatafil for brugerdefineret filudtræk
{
	"$schema": "http://json-schema.org/draft-04/schema#",
	"title": "FiludtraekMetadata",
	"description": "Leveranceskema for metadatabeskrivelse for filudtræk",
	"type": "object",
	"required": [
		"leveranceNavn",
		"miljoe",
		"fortroligData",
		"dataOmfattetAfPersondataloven",
		"DatafordelerUdtraekstidspunkt",
		"tilgaengelighedsperiode",
		"AbonnementsOplysninger",
		"BrugerUdfyldteParametre"
	],
	"properties": {
		"leveranceNavn":{
			"title":"leveranceNavn",
			"type":"string"
		},
		"miljoe":{
			"title":"miljoe",
			"type":"string"
		},
		"fortroligData":{
			"title":"fortroligData",
			"type":"string",
			"enum":["Ja", "Nej"]
		},
		"dataOmfattetAfPersondataloven":{
			"title":"dataOmfattetAfPersondataloven",
			"type":"string",
			"enum":["Ja", "Nej"]
		},
		"MD5CheckSum":{
			"title":"MD5CheckSum",
			"type":"string"
		},
		"DatafordelerUdtraekstidspunkt": {
			"type": "array",
			"items": {
				"type": "object",
				"required": [
					"deltavindueSlut"
				],
				"properties": {
					"deltavindueStart": {
						"title": "deltavindueStart",
						"description": "UTC timestamp",
						"type": "string",
						"pattern": "-?([1-9][0-9]*)?[0-9]{4}-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12][0-9])T(2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]{3})?(Z|[+-](2[0-3]|[01][0-9]):[0-5][0-9])"
					},
					"deltavindueSlut": {
						"title": "deltavindueSlut",
						"description": "UTC timestamp",
						"type": "string",
						"pattern": "-?([1-9][0-9]*)?[0-9]{4}-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12][0-9])T(2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]{3})?(Z|[+-](2[0-3]|[01][0-9]):[0-5][0-9])"
					}
				},
				"additionalProperties": false
			}, "maxItems": 1
		},
		"tilgaengelighedsperiode":{
			"title":"tilgaengelighedsperiode",
			"type":"integer"
		},
		"AbonnementsOplysninger": {
			"type": "array",
			"items": {
				"type": "object",
				"required": [
					"webBrugernavn",
					"tjenesteBrugernavn",
					"abonnementnavn",
					"tjenestenavn",
					"tjenesteversion",
					"oprettelsesdato",
					"senesteAbonnementRedigeringsdato",
					"gentagelsesinterval"
				],
				"properties": {
					"webBrugernavn": {
						"title": "webBrugernavn",
						"type": "string"
					},
					"tjenesteBrugernavn": {
						"title": "tjenesteBrugernavn",
						"type": "string"
					},
					"abonnementnavn": {
						"title": "abonnementnavn",
						"type": "string"
					},
					"tjenestenavn": {
						"title": "tjenestenavn",
						"type": "string"
					},
					"tjenesteversion": {
						"title": "tjenesteversion",
						"type": "string"
					},
					"oprettelsesdato": {
						"title": "oprettelsesdato",
						"description": "UTC timestamp",
						"type": "string",
						"pattern": "-?([1-9][0-9]*)?[0-9]{4}-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12][0-9])T(2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]{3})?(Z|[+-](2[0-3]|[01][0-9]):[0-5][0-9])"
					},
					"senesteAbonnementRedigeringsdato": {
						"title": "senesteAbonnementRedigeringsdato",
						"description": "UTC timestamp",
						"type": "string",
						"pattern": "-?([1-9][0-9]*)?[0-9]{4}-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12][0-9])T(2[0-3]|[01][0-9]):([0-5][0-9]):([0-5][0-9])(\\.[0-9]{3})?(Z|[+-](2[0-3]|[01][0-9]):[0-5][0-9])"
					},
					"gentagelsesinterval": {
						"title": "gentagelsesinterval",
						"type": "string",
						"enum":["Adhoc", "Dagligt", "Ugentligt", "Månedligt", "Årligt"]
					}
				},
				"additionalProperties": false
			},
			"maxItems": 1
		},
		"BrugerUdfyldteParametre": {
			"type": "array",
			"items": {
				"type": "object",
				"required": ["parameternavn", "parametervaerdi"],
				"properties": {
					"parameternavn":{
						"title":"parameternavn",
						"type":"string"
					},
					"parametervaerdi":{
						"title":"parametervaerdi",
						"type":"string"
					},
					"parametertype":{
						"title":"parametertype",
						"type":"string",
						"enum":["string", "date-time", "integer", "number", "object", "array", "null"]
					}
				},
				"additionalProperties": false
			}
		}
	},
	"additionalProperties": false
}
 


Åbn skema for metadatafilen i en browser






  • No labels