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.




Url-struktur for REST services <endpoint>/register/service/version/servicetype/metode? 
Eksempel på url med brugernavn/adgangskodehttps://services.datafordeler.dk/DHMTerraen/DHMKoter/1.0.0/GEOREST/HentKoter?geop=POINT(xxxxxx.x yyyyyy.y)&username=xxx&password=yyy 
Eksempel på url med certifikathttps://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 SelvbetjeningenDHMTerraen
FormatXML/JSON
DLS version1.5
RegisterDHMterræn
Sikkerhedszone0 – Indeholder ikke fortrolige eller følsomme data
AdgangsniveauKendt bruger – der skal oprettes en webbruger og tjenestebruger med brugernavn og adgangskode
PagingAnvender 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.


DatagrundlagetDHM/Terræn og DHM/overflade
SLASe registrets tilgængelighed på Datafordeler.dk


Metodeoversigt

Metode

SLA kategori

Tværgående tjeneste 

HentKoterNormalNej


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

NavnTypeBeskrivelseDefault værdi
georefStringProjektion 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
geopString/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
elevationmodelStringan antage værdien 'dtm' for terrænmodel data eller 'dsm' for overflademodel data. Default værdien hvis parameteren udelades er 'dtm'dtm




Outputparametre

MetodeSkema

Den inkluderede fil "HentKoterSkema.json" indeholder output som JSON-schema 

Skema - filudtræk og webservices (DHM)







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)




Svar
{
    "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)




Svar
{
    "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




Svar
{
    "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




Svar
{
    "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



Svar
{
  "HentKoterRespons": {
    "georef": "EPSG:25832",
    "elevationmodel": "dtm",
    "data": [
      {
        "geop": "550000,6223000",
        "kote": 76.966393
      }
    ]
  }
}