- Created by Maria Klostermann Tapdrup, last modified by Oskar Jakobsen on Jun 17, 2024
| Oprindelig kilde | Datafordeleren |
|---|---|
| Forfatter | Datafordeleren |
| Oprettet | Nov 20, 2019 |
| Version | 1.0 |
| Ændret | Nov 02, 2023 |
| Sidehistorik |
Siden beskriver de REST tjenester, der udstilles på Datafordeleren fra Danmarks Højdemodel (DHM).
Få en introduktion til REST på Datafordeleren, hvis du har brug for en introduktion til og vejledning i, hvordan man kan anvende webservices, som udstilles på Datafordeleren.
Få en guide til helt konkrete anvisninger til at bruge en webservice fra Datafordeleren i Guide til REST på Selvbetjeningen.
Url opbygning for REST
Url for de enkelte services er opbygget af et endpoint efterfulgt af registernavn, servicenavn, versionen af servicen, servicetype (REST eller WFS etc.) samt metodenavn for REST services. Efter ? tilføjes parametre i kaldet, der kan indeholde generelle kaldeparametre for REST services og metode specifikke parametre.
Endpointet indeholder værtsnavnet, med et præfiks for miljøet hvis det ikke er produktionsmiljøet der tilgås. Hvis der er tale om fortrolige eller følsomme data, følger S5 og at servicen skal kaldes med certifikat derfor certservices - se miljøbeskrivelser.
Læs mere om sammensætning af url'er på siden REST på Datafordeleren eller se eksempler på, at parametre bliver tilføjet til url'er på Datafordeleren - eks. på anvendelse af bitemporalitet eller User stories (REST).
| Url-struktur for REST services | <endpoint>/register/service/version/servicetype/metode? |
|---|---|
| Eksempel på url med brugernavn/adgangskode | https://services.datafordeler.dk/DHMTerraen/DHMKoter/1.0.0/GEOREST/HentKoter?geop=POINT(xxxxxx.x yyyyyy.y)&username=xxx&password=yyy |
| Eksempel på url med certifikat | https://certservices.datafordeler.dk/DHMTerraen/DHMKoter/1.0.0/GEOREST/HentKoter?geop=POINT(xxxxxx.x yyyyyy.y) |
Generelt for Danmarks Højdemodel (DHM) webservices
| Registernavn i Selvbetjeningen | DHMTerraen |
|---|---|
| Format | XML/JSON |
| DLS version | 1.5 |
| Register | DHMterræn |
| Sikkerhedszone | 0 – Indeholder ikke fortrolige eller følsomme data |
| Adgangsniveau | Kendt bruger – der skal oprettes en webbruger og tjenestebruger med brugernavn og adgangskode |
| Paging | Anvender ikke paging. |
REST - DHMKoter
Beskrivelse
DHM/Koter er en digital gengivelse af terrænets højdeforhold. DHM/Koter er baseret på DHM/Terræn, hvor objekter såsom træer, huse, biler, m.m. er fjernet.
Tjenesten returnerer en kote for hvert geografiske punkt (plan koordinat), der er angivet i parameteren geop.
Der kan forespørges op til 50 geografiske punkter i en forespørgsel.
Responset skal sikre, at koterne returneres i samme rækkefølge som de geografiske punkter i forespørgslen. Fx hvis forespørgsel har punkterne geop=[geopktA,geopktB,geopktC] så skal responset være [geopktA+koteA,geopktB+koteB,geopktC+koteC], også selvom det ikke var muligt at finde en kote til et eller flere af punkterne. Er der til et geografisk punkt ingen kote, sættes koten til null. Der skal kunne returneres både JSON og XML.
| Datagrundlaget | DHM/Terræn og DHM/overflade |
|---|---|
| SLA | Se registrets tilgængelighed på datafordeler.dk |
Metodeoversigt
Metode | SLA kategori | Tværgående tjeneste |
|---|---|---|
| HentKoter | Normal | Nej |
SLA kategorier i produktion- maksimal svartid i sekunder:
- Simpel: 0.09
- Normal: 1.0
- Kompleks: 2.5
Metode - HentKoter
Eksempel på url med brugernavn/adgangskode
| https://services.datafordeler.dk/DHMTerraen/DHMKoter/1.0.0/GEOREST/HentKoter?geop=POINT(xxxxxxx.x yyyyyy.y)&username=xxx&password=yyy |
Eksempel på url med certifikat
| https://certservices.datafordeler.dk/DHMTerraen/DHMKoter/1.0.0/GEOREST/HentKoter?geop=POINT(xxxxxx.x yyyyyy.y) |
Inputparametre
| Navn | Type | Beskrivelse | Default værdi |
|---|---|---|---|
| georef | String | Projektion som geop punkter er angivet i. Mulige værdier er EPSG:25832 og EPSG:4326. Parameteren angives 0 eller 1 gang. Det betyder, at når der angives flere geografiske punkter i geop, så antages det at alle disse er i samme projektion. | EPSG:25832 |
| geop | String/Array | Koordinater for en eller flere geografiske positioner. Hvert koordinat angives som punkt i WKT format med værdier jf. parameteren georef. Decimaler angives med punktum. Flere koordinater anvendes i en array struktur v. POST, ellers bruges | som separator i GET forespørgsler. Maks. 50 punkter. | obligatorisk |
| elevationmodel | String | an antage værdien 'dtm' for terrænmodel data eller 'dsm' for overflademodel data. Default værdien hvis parameteren udelades er 'dtm' | dtm |
Outputparametre
| Metode | Skema |
|---|---|
Den inkluderede fil "HentKoterSkema.json" indeholder output som JSON-schema |
Eksempler
Eksempel 1 - Hent koter
URL
https://services.datafordeler.dk/DHMTerraen/DHMKoter/1.0.0/GEOREST/HentKoter?format=json&username=xxx&password=yyy&geop=POINT(720000.0 6200000.0)
{
"HentKoterRespons": {
"georef": "EPSG:25832",
"elevationmodel": "dtm",
"data": [
{
"geop": "720000,6200000",
"kote": 29.750881
}
]
}
}
Eksempel 2 - Hent flere koter med seperator
URL
https://services.datafordeler.dk/DHMTerraen/DHMKoter/1.0.0/GEOREST/HentKoter?format=json&username=xxx&password=yyy&geop=POINT(720000.0 6200000.0)|POINT(550000.0 6223000.0)
{
"HentKoterRespons": {
"georef": "EPSG:25832",
"elevationmodel": "dtm",
"data": [
{
"geop": "720000,6200000",
"kote": 29.750881
},
{
"geop": "550000,6223000",
"kote": 76.966393
}
]
}
}
Eksempel 3 - Hent koter med elevationmodel
URL
https://services.datafordeler.dk/DHMTerraen/DHMKoter/1.0.0/GEOREST/HentKoter?format=json&username=xxx&password=yyy&geop=POINT(720000.0 6200000.0)|POINT(550000.0 6223000.0)&elevationmodel=dsm
{
"HentKoterRespons": {
"georef": "EPSG:25832",
"elevationmodel": "dsm",
"data": [
{
"geop": "720000,6200000",
"kote": 35.264359
},
{
"geop": "550000,6223000",
"kote": 76.966393
}
]
}
}
Eksempel 4 - Hent koter med georef
URL
https://services.datafordeler.dk/DHMTerraen/DHMKoter/1.0.0/GEOREST/HentKoter?format=json&username=xxx&password=yyy&geop=POINT(10.178309 55.455779)&georef=EPSG:4326
{
"HentKoterRespons": {
"georef": "EPSG:4326",
"elevationmodel": "dtm",
"data": [
{
"geop": "55.455779,10.178309",
"kote": 41.946392
}
]
}
}
{
URL
https://services.datafordeler.dk/DHMTerraen/DHMKoter/1.0.0/GEOREST/HentKoter?format=json&username=xxx&password=yyy&geop=POINT(550000.0 6223000.0)&georef=EPSG:25832
{
"HentKoterRespons": {
"georef": "EPSG:25832",
"elevationmodel": "dtm",
"data": [
{
"geop": "550000,6223000",
"kote": 76.966393
}
]
}
}