Datamodel for REST API

Datamodel for indberetning til Plandata.dk gennem REST-snitflader.

Datamodellen beskriver de oplysninger, det er muligt at oprette, opdatere, hente og slette via REST API’et. Skemaet tager udgangspunkt i planen og gennemgår de DTO’er (data transfer object), der returneres ved et hent-kald. Dette gøres, da der en del oplysninger, som er tilgængelige via hent-kald, men som ikke kan ændres via opdatering eller oprettelse. DTO'er, der bruges i flere planer, er beskrevet i en anden liste, som linkes til i de planer, hvor de bruges. Hvis et felt er en DTO, angives dette i kolonnen Type. DTO’ens underliggende felter angives derfor ikke. Desuden linker datamodellen til et overblik over kodelister, hvor det er relevant. Skemaet indeholder:

  • oplysningernes navn
  • en beskrivelse af dem
  • feltets navn i REST API'et
  • datatypen for feltet
  • et eksempel på en udfyldt værdi
  • krav til feltets indhold.

Skemaet kan bruges som et opslagsværk, der kan forklare betydningen af felterne bl.a. i en planmæssig kontekst. Flere af felterne er findes kun som oplysninger man kan hente. Datamodellen skal ses i sammenhæng med vores Swagger dokumentation. Her kan det ses hvilke oplysninger der kan tilgås og redigeres i via de forskellige kald.

1. KommuneplanDTO og KommuneplantillaegDTO

2. EmneDTO

3. IndholdDTO

4. OmraadeDTO

5. BilagDTO

6. RammeDTO

7. Eksempel på PDF og JSON fra REST API

8. Indberetning via nyt flow som lever op til de nuværende minimumskrav

9. Revisionshistorik

1. KommuneplanDTO og KommuneplantillaegDTO

Oplysning

 

Beskrivelse

 

Feltnavn i REST

 

Type

 

Eksempel

 

Krav

 

Plannavn

Navnet på kommuneplanen eller kommuneplantillægget

Plannavn

string

“Plannavn for denne plan”

Maks.130 tegn

Planid

Unikt id for planen, som automatisk tildeles af systemet når man opretter en plan.

planId

integer ($int32)

11447612

Kan ikke ændres

Plantype

Angivelse af hvilken plantype der er tale om. Der kan indberettes værdier fra en kodeliste (se kodelister)

plantype

string (Enum)

“KOMMUNEPLAN”

Se Kodeliste, 21. Plantype

Planstatus

Viser planens planlægningsmæssige status, F.eks. Vedtaget eller Aflyst. Der kan indberettes værdier fra en kodeliste (se kodelister)

planstatus

string (Enum)

“FORSLAG”

Se Kodeliste, 25. Status

Kommunekode

Det trecifrede kommunenummer for den kommune, som planen tilhører.

kommunekode

integer ($int32)

851

Plandokument

Link til plandokumentet, som automatisk genereres af systemet

dokumentUrl

string

"http://172.20.6.50/12_11388877_1707393930498.pdf"

Kan ikke ændres

Aflysningsdato

Dato for planens aflysning.

aflysningsdato

string ($date)

“2026-04-25”

format: yyyy-mm-dd

Ikrafttrædelsesdato

Dato for planens ikrafttrædelse.

ikrafttraedelsesdato

string ($date)

“2026-04-25”

format: yyyy-mm-dd

Gyldighedsdato fra

Startdatoen for gyldighedsperioden for den aktuelle version af planen.

gyldighedsdatoFra

string ($date)

“2026-04-25”

format: yyyy-mm-dd

Gyldighedsdato til

Slutdatoen for gyldighedsperioden for den aktuelle version af planen.

gyldighedsdatoTil

string ($date)

“2026-04-25”

format: yyyy-mm-dd

Opdateringstidspunkt

tidspunkt for sidste opdatering

opdateringstidspunkt

string ($date-time)

“2024-04-25T10:32:39.171”

Kan ikke ændres

Kun Kommuneplantillæg:

versionsnr.

Kommuneplantillæg kan have flere versioner. Tildeles automatisk.

versionsnr

integer ($int64)

1

Kan ikke ændres

Datoer

DatoerDTO indeholder en række datofelter som er relevante for planer, omkring høringsperiode, indberetning, forslag og vedtagelse.

datoer

DTO

 

 

Aktuel

Angiver om planen er den aktuelle plan, baseret på bl.a. versionsnr.

aktuel

boolean

true

Kan ikke ændres

Rammer

RammeDTO indeholder info om planens rammer

rammer

DTO

 

 

Retningslinjer

RetningslinjeDTO indeholder info om planens retningslinjer

retningslinjer

DTO

 

 

Kun Kommuneplantillæg:

Relation til kommuneplan

Planid for den kommuneplan som kommuneplantillægget er tilknyttet

kommuneplanId

integer ($int32)

11447612

null, eller valid planid

Kun Kommuneplantillæg:

VVM redegørelse

Angivelse af, hvorvidt kommuneplantillægget indeholder eller er en VVM-redegørelse eller -tilladelse. 

vvmRedegoerelse

string (Enum)

“KOMMUNEPLANTILLAEG_MED_VVM”

Skal ikke udfyldes, men findes på ældre planer. Se kodeliste samt denne nyhed.

2. EmneDTO

 

Oplysning

 

Beskrivelse

 

Feltnavn i REST

 

Type

 

Eksempel

 

Krav

 

Element-id/Planid

Unikt id for planen, som automatisk tildeles af systemet når man opretter en plan.

planId

integer ($int32)

11447612

Kan ikke ændres

Plantype

Angivelse af hvilken plantype der er tale om. I Plandata er Emneobjektet en Plantype og feltet skal i denne sammenhæng derfor altid være udfyldt med EMNE

plantype

string (Enum)

“EMNE”

Se Kodeliste, 21. Plantype

Planstatus

Viser objektets planlægningsmæssige status, F.eks. Vedtaget eller Aflyst. Der kan indberettes værdier fra en kodeliste (se kodelister)

planstatus

string (Enum)

“FORSLAG”

Se Kodeliste, 25. Status

Kommunekode

Det trecifrede kommunenummer for den kommune som planen tilhører

kommunekode

integer ($int32)

851

Aflysningsdato

Dato hvor emneobjektet er blevet aflyst

aflysningsdato

string ($date)

“2026-04-25”, null

format: yyyy-mm-dd

Opdateringstidspunkt

Tidspunkt for sidste opdatering af emneobjektet

opdateringstidspunkt

string ($date-time)

“2024-04-25T10:32:39.171”

Kan ikke ændres

Versionsnummer

I tilfælde hvor der er oprettet en ny version af planen eller emneobjektet vil det fremgå her, hvilken version der er tale om.

versionsnr

integer ($int64)

1

Kan ikke ændres

Kommuneplan - relation

Planid for den kommuneplan som emneobjektet er en del af. Hvis Emneobjektet er en del af et Kommuneplantillæg vil feltet være null

kommuneplanID

integer ($int32)

null

null, eller valid planid

Kommuneplantillæg - relation

Planid for den kommuneplantillæg som emneobjektet er en del af. Hvis Emneobjektet er en del af et Kommuneplan vil feltet være null

kommuneplantillaegID

integer ($int32)

11388877

null, eller valid planid

Indberetningsdato

Dato for emnets indberetning

indberetningsdato

 

“2024-04-25”

format: yyyy-mm-dd

Id for overordnet Element/Plan

Id for det objekt som emnet er underordnet. For Emneobjekter vil dette være tilsvarende ID den Kommuneplan eller det kommuneplantillæg som det er en del af

parentId

integer ($int32)

11388877

null, eller valid planid

Overskrift

Tekstfelt med overskrift

overskrift

string

“Overskriften”

Maks. 30 tegn

Tekst

Tekstfelt til indholdet af emneobjektet

tekst

string

“Her er en indholdstekst”

 

Læseorden/Indeks

Felt der viser hvilken rækkefølge emneobjektet skal vises

indeks

integer ($int32)

1

 

Indhold

IndholdDTO indeholder indholdsobjekter knyttet til emne

indhold

DTO

 

 

Validering

ValideringsinfoDTO indeholder to felter: Valideringsstatus som viser om objektet er valideret, og regelsæt som viser en liste af valideringsfejl hvis relevant.

validering

DTO

 

 Kodeliste, 32 Valideringsstatus

 

3. IndholdDTO

Oplysning

 

Beskrivelse

 

Feltnavn i REST

 

Type

 

Eksempel

 

Krav

 

Element-id/Planid

Unikt id for planen, som automatisk tildeles af systemet når man opretter en plan.

planId

integer ($int32)

11447612

Kan ikke ændres

Plantype

Angivelse af hvilken plantype der er tale om. I Plandata er indholdsobjektet en Plantype og feltet skal i denne sammenhæng derfor altid være udfyldt med INDHOLD

plantype

string (Enum)

“INDHOLD”

Se Kodeliste, 21. Plantype

Planstatus

Viser objektets planlægningsmæssige status, F.eks. Vedtaget eller Aflyst. Der kan indberettes værdier fra en kodeliste (se kodelister)

planstatus

string (Enum)

“FORSLAG”

Se Kodeliste, 25. Status

Kommunekode

Det trecifrede kommunenummer for den kommune som planen tilhører.

kommunekode

integer ($int32)

851

Aflysningsdato

Dato hvor emneobjektet er blevet aflyst.

aflysningsdato

string ($date)

“2026-04-25”, null

format: yyyy-mm-dd

Opdateringstidspunkt

tidspunkt for sidste opdatering af indholdsobjektet

opdateringstidspunkt

string ($date-time)

“2024-04-25T10:32:39.171”

Kan ikke ændres

Versionsnummer

I tilfælde hvor der er oprettet en ny version af planen eller emneobjektet vil det fremgå her hvilken version der er tale om.

versionsnr

integer ($int64)

1

Kan ikke ændres

Kommuneplan - relation

Planid for den kommuneplan som indholdsobjektet er en del af. Hvis indholdsobjektet er en del af et Kommuneplantillæg vil feltet være null

kommuneplanID

integer ($int32)

null

null, eller valid planid

Kommuneplantillæg - relation

Planid for den kommuneplantillæg som indholdsobjektet er en del af. Hvis indholdobjektet er en del af et Kommuneplan vil feltet være null

kommuneplantillaegID

integer ($int32)

11388877

null, eller valid planid

Indberetningsdato

Dato for indholdsobjektets indberetning

indberetningsdato

 

“2024-04-25”

format: yyyy-mm-dd

Id for overordnet Element/Plan

Planid for det emneobjekt som indholdet er tilknyttet

parentId

integer ($int32)

11388877

null, eller valid planid

Overskrift

Tekstfelt med overskrift

overskrift

string

“Overskriften”

maks. 30 tegn

Tekst

Tekstfelt til indholdet af indholdsobjektet

tekst

string

“Her er en indholdstekst”

 

Læseorden/Indeks

Felt der viser hvilken rækkefølge indholdsobjektet skal læses i. Dette har betydning for hvordan det bliver vist i pdf’en

indeks

integer ($int32)

1

 

§ - paragraf

Element, der indholder to felter: en kode, som henviser til en paragraf, og et tekstfelt, som indeholder en beskrivelse af den givne kode.

paragraf

Element

 

Se Kodeliste, 28, Paragrafhenvisninger

Område

OmraadeDTO indeholder områdeobjekter knyttet til indholdsobjektet

omraade

DTO

 

 

Validering

ValideringsinfoDTO indeholder to felter: Valideringsstatus som viser om objektet er valideret, og regelsæt som viser en liste af valideringsfejl hvis relevant.

validering

DTO

 

 Se Kodeliste, 32. Valideringsstatus

4. OmraadeDTO

Oplysning

 

Beskrivelse

 

Feltnavn i REST

 

Type

 

Eksempel

 

Krav

 

Element-id/Planid

Unikt id for planen, som automatisk tildeles af systemet når man opretter en plan.

planId

integer ($int32)

11447612

Kan ikke ændres

Plantype

Angivelse af, hvilken plantype der er tale om. I Plandata er områdeobjektet en Plantype og feltet skal i denne sammenhæng derfor altid være udfyldt med OMRAADE

plantype

string (Enum)

“OMRAADE”

Se Kodeliste, 21. Plantype

Planstatus

Viser objektets planlægningsmæssige status, F.eks. Vedtaget eller Aflyst. Der kan indberettes værdier fra en kodeliste (se kodelister)

planstatus

string (Enum)

“FORSLAG”

Se Kodeliste, 25. Status

Kommunekode

Det trecifrede kommunenummer for den kommune som planen tilhører.

kommunekode

integer ($int32)

851

Geometri

Der kan tilføjes en geometri til et områdefelt

geometri

string

 

 

Aflysningsdato

Dato hvor emneobjektet er blevet aflyst.

aflysningsdato

string ($date)

“2026-04-25”, null

format: yyyy-mm-dd

Opdateringstidspunkt

tidspunkt for sidste opdatering

opdateringstidspunkt

string ($date-time)

“2024-04-25T10:32:39.171”

Kan ikke ændres

Versionsnummer

I tilfælde hvor der er oprettet en ny version af planen eller emneobjektet vil det fremgå her hvilken version der er tale om.

versionnr

integer ($int64)

1

Kan ikke ændres

Kommuneplan - relation

Planid for den kommuneplan som områdeobjektet er en del af. Hvis områdeobjektet er en del af et Kommuneplantillæg vil feltet være null

kommuneplanID

integer ($int32)

null

null, eller valid planid

Kommuneplantillæg - relation

Planid for den kommuneplantillæg som områdeobjektet er en del af. Hvis områdeobjektet er en del af et Kommuneplan vil feltet være null

kommuneplantillaegID

integer ($int32)

11388877

null, eller valid planid

Indberetningsdato

Dato for områdets indberetning

indberetningsdato

string ($date)

“2024-04-25”

format: yyyy-mm-dd

Id for overordnet Element/Plan

Planid for det indholdsobjekt som området er tilknyttet

parentId

integer ($int32)

11388877

null, eller valid planid

Overskrift

Tekstfelt med overskrift

overskrift

string

“Overskriften”

Maks. 30 tegn

Tekst

Tekstfelt til indholdet af områdeobjektet

tekst

string

“Her er en indholdstekst”

 

Læseorden/Indeks

Felt der viser hvilken rækkefølge områdeobjekterne skal vises

indeks

integer ($int32)

1

 

Område - element

Element, der indeholder to felter: en kode, som henviser til en undertemakode, og et tekstfelt, som indeholder en beskrivelse af den givne kode.

omraade

Element

Der kan kun tilknyttes koder, der ligge indenfor den overordnede paragrafkode.

Se Kodeliste, 29. Områdekoder

§ - paragraf - element

Element, der indholder to felter: en kode, som henviser til en paragraf, og et tekstfelt, som indeholder en beskrivelse af den givne kode. Den tilknyttede kode er svarende det overordnede indholdsobjekt.

paragraf

Element

 

Se Kodeliste, 28. Paragrafhenvisninger

Validering

ValideringsinfoDTO indeholder to felter: Valideringsstatus som viser om objektet er valideret, og regelsæt som viser en liste af valideringsfejl hvis relevant.

validering

DTO

 

 Se Kodeliste, 32. Valideringsstatus

5. BilagDTO

Oplysning

 

Beskrivelse

 

Feltnavn i REST

 

Type

 

Eksempel

 

Krav

 

Element-id/Planid

Unikt id for planen, som automatisk tildeles af systemet, når man opretter en plan.

planId

integer ($int32)

11447612

Kan ikke ændres

Plantype

Angivelse af hvilken plantype der er tale om. I Plandata er bilagsobjektet en Plantype og feltet skal i denne sammenhæng derfor altid være udfyldt med BILAG

plantype

string (Enum)

“BILAG”

Se Kodeliste, 21. Plantype

Planstatus

Viser objektets planlægningsmæssige status, F.eks. Vedtaget eller Aflyst. Der kan indberettes værdier fra en kodeliste (se kodelister)

planstatus

string (Enum)

“FORSLAG”

Se Kodeliste, 25. Status

Kommunekode

Det trecifrede kommunenummer for den kommune som planen tilhører.

kommunekode

integer ($int32)

851

Bilagsdokument

Link til bilagsdokumentet, som automatisk genereres af systemet

dokumentUrl

string

"http://172.20.6.50/12_11388877_1707393930498.pdf",

Kan ikke ændres

Opdateringstidspunkt

Tidspunkt for sidste opdatering

opdateringstidspunkt

string ($date-time)

“2024-04-25T10:32:39.171”

Kan ikke ændres

Versionsnummer

I tilfælde, hvor der er oprettet en ny version af planen eller emneobjektet, vil det fremgå her, hvilken version der er tale om.

versionsnr

integer ($int64)

1

Kan ikke ændres

Kommuneplan - relation

Planid for den kommuneplan som emneobjektet er en del af. Hvis bilagsobjektet er en del af et Kommuneplantillæg, vil feltet være null.

kommuneplanID

integer ($int32)

null

null, eller valid planid

Kommuneplantillæg - relation

Planid for den kommuneplantillæg som emneobjektet er en del af. Hvis bilagsobjektet er en del af et Kommuneplan, vil feltet være null.

kommuneplantillaegID

integer ($int32)

11388877

null, eller valid planid

maxVersion

Feltet viser, om områdeobjektet er den seneste version (den, der gælder), vises ikke.

maxVersion

boolean

true

Kan ikke ændres

maxSubversion

Feltet viser, om områdeobjektet er den seneste subversion (den, der gælder), vises ikke.

maxSubversion

boolean

true

Kan ikke ændres

Indberetningsdato

Dato for områdets indberetning.

indberetningsdato

string ($date)

“2024-04-25”

format: yyyy-mm-dd

Id for overordnet Element/Plan

Id for det objekt som indholdsobjekt er underordnet. For bilag er dette lig med kommuneplanen eller kommuneplantillægget.

parentId

integer ($int32)

11388877

null, eller valid planid

Overskrift

Tekstfelt med overskrift.

overskrift

string

“Overskriften”

Maks. 30 tegn

Tekst

Tekstfelt til indholdet af områdeobjektet.

tekst

string

“Her er en indholdstekst”

 

Læseorden/Indeks

Felt, der viser hvilken rækkefølge områdeobjekterne skal vises.

indeks

integer ($int32)

1

 

Validering

ValideringsinfoDTO indeholder to felter: valideringsstatus, som viser om objektet er valideret, og regelsæt, som viser en liste af valideringsfejl hvis relevant.

validering

DTO

 

 

6. RammeDTO

Oplysning

 

Beskrivelse

 

Feltnavn i REST

 

Type

 

Eksempel

 

Krav

 

Plannavn

Rammens navn.

 

 

 

 

Element-id/Planid

Unikt id for planen, som automatisk tildeles af systemet, når man opretter en plan.

planId

integer ($int32)

11447612

Kan ikke ændres

Plantype

Angivelse af hvilken plantype der er tale om. I Plandata er bilagsobjektet en Plantype og feltet skal i denne sammenhæng derfor altid være udfyldt med BILAG

plantype

string (Enum)

“KOMMUNEPLANRAMME”

Se Kodeliste, 21. Plantype

Planstatus

Viser objektets planlægningsmæssige status, F.eks. Vedtaget eller Aflyst. Der kan indberettes værdier fra en kodeliste (se kodelister)

planstatus

string (Enum)

“FORSLAG”

Se Kodeliste, 25. Status

Plannummer

Rammenummer tilknyttet planen.

plannummer

string

 

 

Kommunekode

Det trecifrede kommunenummer for den kommune som planen tilhører.

kommunekode

integer ($int32)

851

Geometri

Der kan tilføjes en geometri til et områdefelt

geometri

string

 

 

Projektion

angivelse af den projektion rammen er angivet i

projection

string

 

Kan ikke ændres

Aflysningsdato

Dato for planens aflysning

aflysningsdato

string ($date)

“2026-04-25”

format: yyyy-mm-dd

Ikrafttrædelsesdato

Dato for planens ikrafttrædelse

ikrafttraedelsesdato

string ($date)

“2026-04-25”

format: yyyy-mm-dd

Gyldighedsdato fra

Startdatoen for gyldighedsperioden for den aktuelle version af planen.

gyldighedsdatoFra

string ($date)

“2026-04-25”

format: yyyy-mm-dd

Gyldighedsdato til

Slutdatoen for gyldighedsperioden for den aktuelle version af planen.

gyldighedsdatoTil

string ($date)

“2026-04-25”

format: yyyy-mm-dd

Opdateringstidspunkt

tidspunkt for sidste opdatering

opdateringstidspunkt

string ($date-time)

“2024-04-25T10:32:39.171”

Kan ikke ændres

Versionsnummer

I tilfælde hvor der er oprettet en ny version af planen eller emneobjektet vil det fremgå her hvilken version der er tale om.

versionsnr

integer ($int64)

1

Kan ikke ændres

Aktuel

Angiver om planen er den aktuelle plan, baseret på bl.a. versionsnr.

aktuel

boolean

true

Kan ikke ændres

Kommuneplan - relation

Planid for den kommuneplan, som emneobjektet er en del af. Hvis bilagsobjektet er en del af et Kommuneplantillæg, vil feltet være null.

kommuneplanID

integer ($int32)

null

null, eller valid planid

Kommuneplantillæg - relation

Planid for den kommuneplantillæg, som emneobjektet er en del af. Hvis bilagsobjektet er en del af et Kommuneplan, vil feltet være null.

kommuneplantillaegID

integer ($int32)

11388877

null, eller valid planid

Plandistrikt

Plandistriktets navn

plandistrikt

string

"Et plandistrikt"

 

Validering

ValideringsinfoDTO indeholder to felter: valideringsstatus, som viser om objektet er valideret, og regelsæt, som viser en liste af valideringsfejl hvis relevant.

validering

DTO

 

 Se Kodeliste, 32. Valideringsstatus

Reguleringsbestemmelser

I RammeReguleringDTO ligger de oplysninger som findes i rammen om anvendelse, bebyggelsesomfang, udstykning osv.

regulering

DTO

 

 

7. Eksempel på indberettet kommuneplantillæg.

Dette er et eksempel på et indberettet kommuneplantillæg kaldet "Nye færgelejer Hals-Egense"

Denne Pdf er et eksempel på en genereret pdf lavet igennem Plandatas REST API.

Den består af en række objekter som kan hentes i det JSON-format der vises is REST API her:

 

 

8. Indberetning via nyt flow som lever op til de nuværende minimumskrav

Dette er et eksempel på et indberettet kommuneplantillæg kaldet "Kommuneplantillæg nr. 6.1 Boliger ved Søndermarksgård" som er blevet indberettet på to måder efter den nye model som lever op til kravene for indberetning. Man kan indberette en minimumsversion som indeholder de samme informationer som en plan indberettet efter den gamle model eller lave en fuld indberetning af planen.

Retningslinjer kan oprettes som indholdsobjekter med dertilhørende områder. Det er ikke nødvendigt at oprette en fuld indberetning for at bruge disse objekter til indberette retningslinjer. Dette er illustreret nedenfor i tre forskellige indberetningsversioner.

Pdf'en er er blevet indberettet på tre forskellige måder:

 

 

9. Revisionshistorik

Her vil ændringer i dokumentets forskellige versioner fremgå. Visionsnummereringen følger følgende regler:

     1) Mindre rettelser af fejl og mangler, herunder stavefejl og mindre tilføjelser af forklarende tekst.

  1. Rettelserne har ingen betydning for registreringsbehov og begrebsnavngivning.
  2. Foretages løbende.
  3. Kommunikeres via planinfo.dk
  4. Udgivelseskode 0.0.1

      2) Større uddybende og præciserende tilføjelser og rettelser.

  1. Ændringerne har ingen betydning for registreringsbehov og begrebsnavngivning.
  2. Foretages efter behov.
  3. Kommunikeres via planinfo.dk
  4. Udgivelseskode 0.1.0

     3) Ændringer og / eller tilføjelser af registreringsbehov, begreber og navngivning.

  1. Rettelserne har betydning for registreringsbehov, begrebsnavngivning mm. Ændringerne berører derfor Plandata’s database-setup og Plandata’s snitflader.
  2. Kommunikeres via planinfo.dk
  3. Udgivelseskode 1.0.0

 

Versionsnummer

Dato

Beskrivelse af ændringer

1.0.0

11.06.2024

Første version

1.0.1

27.06.2024

Rettelser af fejl baseret på feedback til første version.