Danmarks Adressers Web API - DAWA

Danmarks Adressers Web API (DAWA) udstiller data og funktionalitet vedrørende Danmarks adresser, adgangsadresser, vejnavne samt postnumre. DAWA anvendes til at etablere adressefunktionalitet i it-systemer. Målgruppen for nærværende website er udviklere, som ønsker at indbygge adressefunktionalitet i deres it-systemer. DAWA er en del af AWS Suiten.

DAWA kan bruges til at etablere mange forskellige former for adressefunktionalitet i it-systemer. Det kan f.eks. være adresseindtastning, adressesøgning, adresseopslag, adressevask, adressevalidering eller etablering af en opdateret, lokal kopi af adressedata. Nedenfor kan du se en række eksempler på de forskellige funktionaliteter.

Adresseindtastning

Indtastning af adresser er et væsentligt element i mange applikationer.Det skal både være let for brugeren at indtaste en gyldig adresse og for udvikleren at implementere denne funktionalitet. DAWA er designet med dette for øje. Nedenfor vises en række eksempler til hvordan indtastning af adresser kan implementeres.

Autocomplete i forbindelse med adresseindtastning er en mekanisme til at forudsige, hvilken adresse brugeren ønsker at indtaste uden at brugeren behøver at taste hele adressen.

Autocomplete af adresse

Valgt adresse:

Autocomplete af adgangsadresse

Valgt adgangsadresse:

Autocomplete af adresse i København

Valgt adresse:

Feltindtastning

Indtastning af en adresse kan også baseres på felter til hver enkel bestandel af adressen. De enkelte felter indeholder autocompletefunktionalitet. For hvert udfyldt felt indskrænkes udfaldsrummet for de efterfølgende feltet. Hvis du f.eks. indtaster 3450 Allerød, som postnummer, giver vejnavnefeltet dig kun mulighed for at vælge blandt vejnavne i postnummer 3450. Samme mekanisme gælder for husnummer, etage og dør.

Reverse geokoding

Det sidste eksempel på indtastning af en adresse er sådan set ikke en indtastning, men mere en udpegning. Brugeren præsenteres for et kort, hvorpå brugeren med et klik påkortet udpeger nærmeste adresse.

Klik på kortet nedenfor og få nærmeste adresse.

Adressevask

Adresser bliver brugt i mange forskellige sammenhænge. Det kommer klart til udtryk i det store antal it-systemer, som rummer adresser. Adresserne er typisk blevet indtastet uden kontrol af adressens gyldighed og kan være ændret eller nedlagt efter indtastningen. Det resulterer i, at it-systemet med stor sandsynlighed rummer ugyldige adresser. Konsekvenserne kan være: Problemer med kundebesøg, postlevering, manuelt arbejde med at vedligeholde adresser og lignende. Det kan også resultere i, at man ikke kan anvende adresserne til at foretage analyser. Grundet de ufuldstændige adresseoplysninger kan man ikke kan slå adressen op i DAWA og derved skaffe yderligere oplysninger om adressen, som f.eks. adressens placering og tilknytningen til administrative inddelinger. Disse oplysninger kan anvendes til analyse af geografisk fordeling af ens kunder, placering i sogn og kommune, fordeling mellem land, by og sommerhuszone og andre anvendelige analyser. Det er kort sagt værdifuldt at have gyldige adresser i sit it-system.

DAWA tilbyder funktionalitet til at vaske adresser, som du kan anvende til at implementere adressevask i dit eget it-system. Adressevask er en proces, hvor en ustruktureret adresse, som kan være ufuldstændig og indeholde stavefejl, oversættes til den korrekte, strukturerede, autoritative adresse.

Validering af adresser

DAWA kan også anvendes til validering af adresser. Hvis du f.eks. har dit eget adressekartotek, som du gerne vil sikre dig udelukkende indeholder gyldige adresser, kan du bruge DAWA.

Nedenfor kan du prøve, om du kan indtaste en gyldig adresse uden autocompletehjælp. Husk at der skelnes mellem små og store bogstaver.

Adressevalidering

Adressedata

Hver enkel adresse er repræsenteret af en række oplysninger. Udover data om selve adressen: vejnavn, husnr, supplerende bynavn, postnummer, etage og dør, er der knyttet en lang række andre data til adressen. Her kan nævnes unik identifikation, placering (koordinater), ejerlav, matrikelnr, ejendomsnr samt tilknytning til administrative inddelinger: kommune, sogn, region, retskreds, politikreds og opstillingskreds.

Adressen kan på denne måde være indgang til andre områder, som f.eks. ejendomsområdet. Udfra en adresse kan du få fat i det tilknyttede ejensdomsnummer, som du så kan anvendes til opslag i ejendomssystemer efter ejendomsdata.

Adressesøgning

DAWA kan anvendes til at udvælge præcist de adresser, du er interesseret i. Det kan dreje sig om adresser i et enkelt sogn eller kommune. Det kan dreje som adresser indenfor en bestemt afstand til punkt. Eller adresser på en enkelt vej. Dawa giver mulighed for at udsøge adresser efter mange parametre og kombinationer af disse.

Download af adresser

Har du behov for at kunne arbejde med adressedata på din egen PC? Til at etablere din egen kopi af Danmarks Adresser? Til at lave en statistisk eller geografisk analyse baseret på adressedata? Til dette kan du bruge DAWA’s download funktionalitet. Her kan du downloade aktuelle data om adresser, adgangsadresser, vejnavne, postnumre, supplerende bynavne, kommuner, sogne, opstillingskredse, regioner, retskredse samt politikredse. Det er ikke nødvendigt at downloade alle data. Du kan nøjes med at udvælge præcist de data, du er interesseret i. Lad os se på nogle eksempler:

CSV fil med alle adresser i Kalundborg kommune
CSV fil med alle adresser med husnummeret 77
CSV fil med de adresser, som ligger som har en afstand på mindre end 50 m til Gammel mønt 4, 1117 København K.
GeoJSON fil med København og Frederiksberg kommuners adresser.

Etablering af opdateret kopiadresseregister

Nogle har behov for at have en lokal, opdateret kopi af adressedata. DAWA kan anvendes til at etablere og holde kopien af adressedata opdateret. Til dette anvendes Replikerings API'et.

Dawa bruges af udviklere til at etablere adressefunktionalitet i it-systemer. DAWA kan anvendes fra et meget bredt udsnit af - for ikke at sige alle - platforme og udviklingssprog. DAWA tilgås via et web API, hvor man ved simple HTTP forespørgsler fra sit program kalder DAWA.

Hvis du f.eks. ønsker at finde alle adresser i Københavns kommune med husnummer 13 anvender du følgende URl fra dit program:

http://dawa.aws.dk/adresser?kommunekode=0101&husnr=13

Autocomplete af adresser

Hvordan implementerer du adresse autocomplete i din applikation? Hvis det er en web applikation er det enkelt. Til dette har vi lavet en komponent, som let kan integreres i din web applikation og etablere adresseindtastning med autocomplete. Find mere information på AWS Autocomplete komponentens web site.

Hvis det ikke er en web applikation, som skal forsynes med adresse autocomplete, eller du af anden grund ikke kan anvende autocomplete komponenten, anbefaler vi dig at bruge autocomplete API'et, som skræddersyet til at implementere adresse autocomplete i hvilken som helst applikationstype. Læs mere på Autocomplete API'et.

Hvis du har helt specielle krav til hvordan autocomplete mekanismen er sammensat, kan du f.eks. anvende autocomplete på vejnavne, adgangsadresser og adresser til at sammen sætte din helt egen adresse autocomplete. Vi vil ikke anbefale det, men det kan gøre på følgende måde: Etablering af autocomplete af adresser baseres på en kæde af forespørgelser med tiltagende specifikhed. Først autocompletes på vejnavnet. Hvis brugeren for eks. har indtastet 'lill' anvendes følgende URL:

http://dawa.aws.dk/vejnavne/autocomplete?q=lill

Når brugeren har valgt det aktuelle vejnavn (eller har tastet nok til at identificere ét unikt vejnavn) overgår forespørgelser fra autocomplete på vejnavne til autocomplete på adgangsadresser. Lad os sige at brugeren har valgt Lilledal som vejnavn, og forsætter med indtastning af husnummer 23, så skal følgende URL bruges:

http://dawa.aws.dk/adgangsadresser/autocomplete?q=Lilledal 23

Denne forespørgelse begrænser autocomplete-søgningen til søgning efter adgangsadresser der matcher "Lilledal 23". Det resultere i adgangsadressen "Lilledal 23, 3450 Allerød", som igen kan anvendes til at søge efter adresser, som denne adgangsadresse:

http://dawa.aws.dk/adresser/autocomplete?q=Lilledal 23, 3450 Allerød  

Hvis din applikation kun er rettet mod adresser i f.eks. Københavns kommune, kan du i dine forespørgelser begrænse udsnittet af adresser og vejnavne, der kan autocompletes på til Københavns kommunes adresser. Det sker på følgende måde:

http://dawa.aws.dk/vejnavne/autocomplete?kommunekode=0101&q=rød

og

http://dawa.aws.dk/adresser/autocomplete?kommunekode=0101&vejnavn=Rødkildevej&q=Rødkildevej 4

Feltindtastning af adresser

Du kan se et eksempel på feltindtastning af adresser i afsnittet om anvendelser.

af adresser starter med autocomplete af adressens postnummer. Hvis f.eks. brugeren har indtastet 'aller' med henblik på at vælge postnummeret 3450 Allerød anvendes følgende forespørgelse:
http://dawa.aws.dk/postnumre/autocomplete?q=aller

Når postnummeret er valgt går brugeren til indtastning af vejnavn, som er begrænset til de vejnavne, som er i postnummer 3450. Brugeren taster lilled for at vælge vejen Lilledal:

http://dawa.aws.dk/vejnavne/autocomplete?q=lilled&postnr=3450

Mulige husnumre for Lilledal i 3450 Allerød findes vha:

http://dawa.aws.dk/adgangsadresser?vejnavn=Lilledal&postnr=3450

Som anvendes til autocomplete af husnummeret.

Mulige etage angivelser findes på lignende vis:

http://dawa.aws.dk/adresser?vejnavn=Lilledal&husnr=23&postnr=3450

Det samme gælder for dørangivelsen:

http://dawa.aws.dk/adresser?vejnavn=Lilledal&husnr=23&etage=1&postnr=3450

På denne måde styres brugeren til at angive en gyldig adresse.

Adressevalg baseret på reverse geokodning

Et eksempel på udpegning af en adresse baseret på reverse geokodning kan prøves i afsnittet om anvendelser.

Udpegningen af adressen foretages på kort, som resulterer i et koordinatsæt. Koordinatsæt anvendes til at finde nærmeste adresse på følgende måde:

http://dawa.aws.dk/adgangsadresser/reverse?x=12.59074&y=55.700677

Adressevask

Adressevask i DAWA foregår på følgende måde: Lad os sige, at du har Geodatastyrelsen som kunde og har registreret ”Rante mester vej 8 st, 2400” som styrelsens adresse. For at vaske adressen bruges adressebetegnelsen som input til DAWA’s adressevaskservice:

http://dawa.aws.dk/datavask/adresser?betegnelse=Rante mester vej 8 st, 2400

Som resultat får man en række oplysninger om vasken. Den primære oplysning er, hvorvidt man har fået vasket adressen til en gyldig adresse. Kategorien informerer om vaskeresultatet. Kategori A betyder eksakt match, kategori B sikker match og kategori C usikker match. I vores eksempel drejer det sig om en kategori B, som betyder at vi har fundet adressen og får leveret den vaskede adresses bestanddele, som f.eks. unikt id, vejnavn, husnummer og postnummer. Derudover returneres en reference (en URL) til adressen i DAWA

http://dawa.aws.dk/adresser/0a3f50a0-4660-32b8-e044-0003ba298018

som kan anvendes til at hente en lang række andre data om adressen. Det drejer sig f.eks. om adressens placering, tilknytninger til f.eks. administrative inddelinger som sogn og retskreds, placering på jordstykke og selvfølgelig den korrekte adressebetegnelse, som er "Rentemestervej 8, st., 2400 København NV" - og ikke ”Rante mester vej 8 st, 2400”.

Du kan finde dokumentation for adressevask på http://dawa.aws.dk/adressedok#datavask og for adgangsadressevask på http://dawa.aws.dk/adgangsadressedok#datavask.

Adressevalidering.

Eksisterer adressen: Fægangen 1, 1. 13, 4180 Sorø? Det kan vi afgøre på følgende måde:

http://dawa.aws.dk/adresser?vejnavn=Fægangen&husnr=1&etage=1&dør=13&postnr=4180

Ovenstående forespørgelse resulterer i en liste med 1 adresse. Hvilket betyder at adressen eksisterer og er unik. Altså en gyldig adresse.

Download

Download af adresser følger samme mønster som ovenfor, nemlig ved at anvende simple HTTP forespørgsler til at specificere hvilke adresser, der ønskes downloadet.Ved download ønskes typisk data i csv- eller GeoJSON formattet. Lad os se på nogle eksempler:

Adresser i region Syddanmark:

http://dawa.aws.dk/adresser?regionskode=1083&format=csv

Adresser i Grøndal sogn:

http://dawa.aws.dk/adresser?sognekode=7060&format=geojson 

Kommunikationen mellem klientprogrammet og DAWA foregår via HTTP protokollen. Klientapplitionen sender et GET request, hvor URL'en specificerer de ønskede data, og modtager efterfølgende et response med de ønskede data.

Hvordan dette gøres programmatisk afhænger af platform og programmeringssprog. Vi har for at gøre det lettere at komme i at programmere op mod DAWA lavet nogle programmeringseksempler baseret på forskellige platforme og programmeringssprog:

Vi planlægger at tilføje kodeeksempler i andre sprog og platforme. Hvis du vil bidrage med et kodeeksempel i dit favorit programmeringssprog, er du meget velkommen.