Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/achtergrondinformatie/Introductie.md
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
- Weet je wat een OGC API is en wat de mogelijkheden ervan zijn;
- Ken je voorbeelden van toepassingen met geo-informatie.

OGC API's stellen geodata beschikbaar. Wat is geodata, ook wel **ruimtelijke informatie**, eigenlijk? Deze leermodule gaat over de OGC API's van PDOK; **wat doet PDOK eigenlijk?** En **wat zijn OGC API's** eigenlijk precies? En waarom is het **belangrijk om data op een gestandaardiseerde en generieke manier te ontsluiten?** Dat behandelen we allemaal in dit onderdeel.
OGC API's stellen geodata beschikbaar. Wat is geodata, ook wel **ruimtelijke informatie**, eigenlijk? Deze leermodule gaat over de OGC API's van PDOK; **wat doet PDOK eigenlijk?** En **wat zijn OGC API's** eigenlijk precies? En waarom is het **belangrijk om data op een gestandaardiseerde en generieke manier te ontsluiten**? Dat behandelen we allemaal in dit onderdeel.

## Wat is geo-informatie?

Expand Down
14 changes: 7 additions & 7 deletions docs/achtergrondinformatie/Wat is geo-informatie.md
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ Geoinformatie is onmisbaar voor hulpdiensten, bijvoorbeeld om risicogebieden en

Veel van de datasets bij PDOK zijn een basisregistratie. Wat is een basisregistratie precies?

Een basisregistratie is een officiële, landelijke registratie waarin gegevens worden vastgelegd die door veel overheidsorganisaties gebruikt worden. Zie het als een gezamelijke set van centrale gegevens: één plek waar betrouwbare, actuele en uniforme gegevens staan, zodat iedereen dezelfde informatie gebruikt.
Een basisregistratie is een officiële, landelijke registratie waarin gegevens worden vastgelegd die door veel overheidsorganisaties gebruikt worden. Zie het als een gezamenlijke set van centrale gegevens: één plek waar betrouwbare, actuele en uniforme gegevens staan, zodat iedereen dezelfde informatie gebruikt.

### Kenmerken van een basisregistratie

Expand Down Expand Up @@ -68,21 +68,21 @@ Geodata kan op verschillende manieren worden opgeslagen in een bestand of databa

## Raster- of vectordata?

Er worden ruwweg twee vormen van geodata onderscheiden: vectordata en rasterdata. In het geval van rasterdata wordt de informatie opgeslagen in een afbeelding. Een rasterbestand bestaat uit een vlakdekkend grid. Een rasterbestand is samengesteld uit één of meerdere banden. Elke rastercel ("pixel") in elke band heeft een numerieke waarde. Samen kunnen deze waardes een kleur voorstellen, bijvoorbeeld in een luchtfoto of satellietbeeld. Er is dan een band voor Red, een band voor Green en een band voor Blue (RGB). Maar de waardes in enkelbands rasterebstanden kunnen ook iets anders voorstellen, zoals hoogte of temperatuur.
Er worden ruwweg twee vormen van geodata onderscheiden: vectordata en rasterdata. In het geval van rasterdata wordt de informatie opgeslagen in een afbeelding. Een rasterbestand bestaat uit een vlakdekkend grid. Een rasterbestand is samengesteld uit één of meerdere banden. Elke rastercel ("pixel") in elke band heeft een numerieke waarde. Samen kunnen deze waardes een kleur voorstellen, bijvoorbeeld in een luchtfoto of satellietbeeld. Er is dan een band voor Rood, een band voor Groen en een band voor Blauw (RGB). Maar de waardes in enkelbands rasterbestanden kunnen ook iets anders voorstellen, zoals hoogte of temperatuur.

Vectordata gebruikt een totaal andere benadering om geodata op te slaan. In het geval van vectordata wordt de informatie opgeslagen in een tabel met een geometrie. De geometrie kan opgeslagen worden als verzameling coördinaten in een attribuut in een tabel (met een eigen datatype *geometrie*). De geometrie kan een punt, lijn of vlak zijn.

Rasterdata en vectordata hebben door de specieke manier waarop data wordt opgeslagen verschillende voor- en nadelen ten opzichte van elkaar. Daardoor kennen raster- en vectordata hun eigen toepassingsgebieden.
Rasterdata en vectordata hebben door de specifieke manier waarop data wordt opgeslagen verschillende voor- en nadelen ten opzichte van elkaar. Daardoor kennen raster- en vectordata hun eigen toepassingsgebieden.

Over het algemeen (er zijn uitzonderingen mogelijk) wordt rasterdata gebruikt voor continue fenomenen, zoals hoogte en temperatuur. Dit soort natuurlijke fenomenen hebben geen harde grenzen en lopen continue door. Dit in tegenstelling tot discrete informatie, zoals gebouwen en administratieve grenzen. Die beginnen en eindigen op posities die wij als mensen hebben aangewezen. Voor discrete fenomenen gebruiken we dan ook vooral vectordata.
Over het algemeen (er zijn uitzonderingen mogelijk) wordt rasterdata gebruikt voor continu fenomenen, zoals hoogte en temperatuur. Dit soort natuurlijke fenomenen heeft geen harde grenzen en loopt continu door. Dit in tegenstelling tot discrete informatie, zoals gebouwen en administratieve grenzen. Die beginnen en eindigen op posities die wij als mensen hebben aangewezen. Voor discrete fenomenen gebruiken we dan ook vooral vectordata.

!!! warning "TO DO"

Afbeelding toevoegen

Voorbeelden van rasterdatasets bij PDOK zijn:

* [Algemeen Hoogtebestand Nederland (AHN)](https://www.pdok.nl/introductie/-/article/actueel-hoogtebestand-nederland-ahn) voor hoogtedata
* [Algemeen Hoogtebestand Nederland (AHN)](https://www.pdok.nl/introductie/-/article/actueel-hoogtebestand-nederland-ahn) voor hoogtedata
* [Landelijk Grondgebruik Nederland](https://www.pdok.nl/introductie/-/article/landelijk-grondgebruik-nederland-lgn-)
* [Luchtfoto RGB](https://www.pdok.nl/introductie/-/article/pdok-luchtfoto-rgb-open-) en [Luchtfoto Infrarood](https://www.pdok.nl/introductie/-/article/pdok-luchtfoto-infrarood-open-)

Expand All @@ -96,7 +96,7 @@ Voorbeelden van vectordatasets bij PDOK zijn:

!!! warning "TO DO"

Geodata is altijd opgeslagen in een bepaald coördinaatreferentiesysteem. Het coördinaatreferentiesysteem bepaalt hoe de coördinaten worden opgeslagen. Oftewel: hoe de positie op aarde bepaald wordt. De aarde is niet plat hoewel kaarten dat wel zijn. Helaas is de aarde ook niet perfect rond of ovaal.
Geodata is altijd opgeslagen in een bepaald coördinaatreferentiesysteem (CRS). Het coördinaatreferentiesysteem bepaalt hoe de coördinaten worden opgeslagen. Oftewel: hoe de positie op aarde bepaald wordt. De aarde is niet plat hoewel kaarten dat wel zijn. Helaas is de aarde ook niet perfect rond of ovaal.

<div style="text-align: center;">
<img src="../../assets/achtergrondinformatie/geoid-c2.jpg" alt="Geoïde" width=40% />
Expand All @@ -110,7 +110,7 @@ De aarde lijkt meer op een aardappel, met bergen en valleien. We noemen dit een

Voor veel toepassingen is nauwkeurigheid wel belangrijk. Je hebt dan een ellipsoïde nodig die goed aansluit op het stukje aarde waarin je geïnteresseerd bent. Op andere plekken op de aarde zal die ellipsoïde totaal niet aansluiten. We noemen dat ook wel een lokaal coördinatenstelsel. Het Rijksdriehoeksstelsel, ook wel "RD Amersfoort" genoemd, is zo'n lokaal coördinatenstelsel. RD Amersfoort biedt hoge nauwkeurigheid in Nederland. Buiten Nederland is het echter nutteloos.

We zijn er nog niet helemaal. Wat als je zo'n ellipsoïde op een plat vlak probeert te projecteren? Stel je voor dat je een mandarijn pelt en de schil in één stuk hebt. Als je die op een plat vlak legt, ontstaat er gaten. Kaartprojecties zijn manieren om de aardbol zodanig te vervormen en uit te rekken, dat die gaten worden opgevuld. Daar zijn veel verschillende manieren voor.
We zijn er nog niet helemaal. Wat als je zo'n ellipsoïde op een plat vlak probeert te projecteren? Stel je voor dat je een mandarijn pelt en de schil in één stuk hebt. Als je die op een plat vlak legt, ontstaan er gaten. Kaartprojecties zijn manieren om de aardbol zodanig te vervormen en uit te rekken, dat die gaten worden opgevuld. Daar zijn veel verschillende manieren voor.

![alt text](../assets/achtergrondinformatie/Projection_conique.jpg){ width="250" }![alt text](../assets/achtergrondinformatie/Projection_cylindrique.jpg){ width="250" }![alt text](../assets/achtergrondinformatie/Projection_azimutale_stereographique.jpg){ width="250" }

Expand Down
32 changes: 16 additions & 16 deletions docs/achtergrondinformatie/Wat zijn OGC APIs.md
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

Een OGC API is een gestandaardiseerde interface waarmee gebruikers en systemen geodata kunnen bevragen en bekijken via het internet. Een API, een Application Programming Interface, kan door mensen gebruikt worden om data op te vragen. Maar nog vaker worden API’s gebruikt door systemen (machines) om met elkaar te praten. Ontwikkelaars kunnen op die manier op een eenvoudige manier data van andere bronnen in hun eigen software integreren. Een API is dus een stopcontact voor data. Je hebt, in tegenstelling tot vroeger, geen specifieke kennis over geodata meer nodig om dit te kunnen.

Een OGC API volgt de OGC API standaard. De standaard schrijft precies voor hoe de interface opgebouwd moet zijn. De OGC API standaard is een open standaard die zeer breed omarmd wordt. De standaard wordt gemaakt door het Open Geospatial Consortium (OGC). Dat is een wereldwijde organisatie die open standaarden maakt voor het geo-informatiedomein.
Een OGC API volgt de API standaarden opgesteld door het Open Geospatial Consortium (OGC). Dat is een wereldwijde organisatie die open standaarden maakt voor het geo-informatiedomein. De standaard schrijft precies voor hoe de interface opgebouwd moet zijn. De OGC API standaard is een open standaard die zeer breed omarmd wordt.

Een OGC API bestaat altijd uit dezelfde onderdelen. En de OGC API kent verschillende vormen om data beschikbaar te stellen. Welke vorm je kiest, is afhankelijk van wat je precies met de geodata wil gaan doen. En voor de organisatie die de data aanbiedt met een OGC API is het afhankelijk van hoe ze de data precies beschikbaar willen stellen.

Expand All @@ -27,16 +27,16 @@ Onderstaand overzicht laat zien hoe de OGC API standaard is gebouwd met bouwblok

Onderstaande tabel toont welke bouwblokken er zijn, toont of dit bouwblok bij PDOK is geïmplementeerd (stand: januari 2026) en waar dit bouwblok in deze leermodule wordt behandeld.

| Onderdeel | Beschrijving | Beschikbaar bij PDOK? | Leermodule |
| ----- | ---- | :----: | :----: |
| [**Common**](<https://ogcapi.ogc.org/common/>) | De fundering voor elke OGC API | ✅ | [Features](<../features/Introductie.md>) en [Tiles](<../tiles/Introductie.md>) |
| [**Features**](<https://ogcapi.ogc.org/features>) | Vectordata | ✅ | [Features](<../features/Introductie.md>) |
| [**Tiles**](<https://ogcapi.ogc.org/tiles>) | Kaarttegels (visualisatie) | ✅ | [Tiles](<../tiles/Introductie.md>) |
| [**Styles**](<https://ogcapi.ogc.org/styles>) | Visualisatieregels | ✅ | [Tiles](<../tiles/Introductie.md>) |
| [**Records**](<https://ogcapi.ogc.org/records>) | Metadata | ❌ | ❌ |
| [**Maps**](<https://ogcapi.ogc.org/maps>) | Kant-en-klare kaarten en kaarttegels | ❌ | ❌ |
| [**Coverages**](<https://ogcapi.ogc.org/coverages/>) | Rasterdata | ❌ | ❌ |
| [**EDR**](<https://ogcapi.ogc.org/edr>) | Environment Data Retrieval | ❌ | ❌ |
| Onderdeel | Beschrijving | Beschikbaar bij PDOK? | Leermodule |
|------------------------------------------------------|--------------------------------------|:---------------------:|:------------------------------------------------------------------------------:|
| [**Common**](<https://ogcapi.ogc.org/common/>) | De fundering voor elke OGC API | ✅ | [Features](<../features/Introductie.md>) en [Tiles](<../tiles/Introductie.md>) |
| [**Features**](<https://ogcapi.ogc.org/features>) | Vectordata | ✅ | [Features](<../features/Introductie.md>) |
| [**Tiles**](<https://ogcapi.ogc.org/tiles>) | Kaarttegels (visualisatie) | ✅ | [Tiles](<../tiles/Introductie.md>) |
| [**Styles**](<https://ogcapi.ogc.org/styles>) | Visualisatieregels | ✅ | [Tiles](<../tiles/Introductie.md>) |
| [**Records**](<https://ogcapi.ogc.org/records>) | Metadata | ❌ | ❌ |
| [**Maps**](<https://ogcapi.ogc.org/maps>) | Kant-en-klare kaarten en kaarttegels | ❌ | ❌ |
| [**Coverages**](<https://ogcapi.ogc.org/coverages/>) | Rasterdata | ❌ | ❌ |
| [**EDR**](<https://ogcapi.ogc.org/edr>) | Environment Data Retrieval | ❌ | ❌ |

Laten we de bouwblokken één voor één eens nader bestuderen.

Expand All @@ -51,7 +51,7 @@ Bouwblok voor het bevragen en bewerken van featuredata (vectordata). Dit bouwblo
* **Part 1: Core**
* **Part 2: CRS** voor het opslaan of bevragen van featuredata in een bepaald coördinaatreferentiesysteem;
* **Part 3: Filtering** voor het op basis van een filter bevragen van featuredata;
* *Draft* Part 4: CRUD voor het toevoegen, vervangen, updaten en verwijderen van featuredata.
* **Part 4: [CRUD](https://nl.wikipedia.org/wiki/CRUD)** voor het toevoegen, vervangen, updaten en verwijderen van featuredata.
* *Draft* Part 5: Schemas
* *Draft* Part 6: Property Selection
* *Draft* Part 7: Geometry Simplification
Expand All @@ -61,7 +61,7 @@ Bouwblok voor het bevragen en bewerken van featuredata (vectordata). Dit bouwblo

### Tiles

Bouwblok voor het opvragen van geodata als kaarttegels, voor het bekijken van deze data.
Bouwblok voor het opvragen van geodata als kaarttegels en voor het bekijken van deze data.

### Styles

Expand All @@ -81,7 +81,7 @@ Bouwblok voor het opvragen van rasterdata, waarmee je ook berekeningen op celniv

### EDR

Bouwblok voor Environment Data Retrieval: het integraal opvragen van ruimtelijke klimaatdata die meerdere dimensies integreert: denk aan het opvragen van luchtvochtigheid, temperatuur en neerslag in 3D door de tijd heen.
Bouwblok voor Environment Data Retrieval (EDR): het integraal opvragen van ruimtelijke klimaatdata die meerdere dimensies integreert. Denk aan het opvragen van luchtvochtigheid, temperatuur en neerslag in 3D door de tijd heen.

![Overzicht van OGC APIs](../assets/achtergrondinformatie/ogcapis-overview.png)

Expand All @@ -90,5 +90,5 @@ Bouwblok voor Environment Data Retrieval: het integraal opvragen van ruimtelijke
* Routes
* 3D GeoVolumes
* Joins
* DGGS
* Connected Systems
* Discrete Global Grid System [(DGGS)](https://ogcapi.ogc.org/dggs/)
* Connected Systems
6 changes: 3 additions & 3 deletions docs/features/Bevraag OGC API - Features met curl.md
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ We hebben eerder gezien hoe je de API-documentatie in de browser kunt bekijken.
In de commandline kun je met behulp van de tool `cURL` data opvragen en versturen. Je kunt dit ook gebruiken om API's om data op te vragen en die data vervolgens terug te krijgen. Zo ook de OGC API's van PDOK. Je krijgt het resultaat terug als JSON-bestand.
Ontwikkelaars gebruiken dit principe om API's te implementeren in hun eigen applicaties.

In dit deel stel je met behulp van de OpenAPI specification GET requests samen om de OGC API - Features van de Basisregistratie Grootschalige Topografie (BGT) te bevragen. Die requests vuur je vervolgens met curl af. Het resultaat ontvang je als `json`.
In dit deel stel je met behulp van de OpenAPI specification GET requests samen om de OGC API - Features van de Basisregistratie Grootschalige Topografie (BGT) te bevragen. Die requests vuur je vervolgens met `curl` af. Het resultaat ontvang je als `json`.

## Voorbereiding

Expand Down Expand Up @@ -265,7 +265,7 @@ Standaard worden de features uitgeleverd in CRS84 coördinaatreferentiesysteem (
Voor Windows:

```
curl - X "GET" "https://api.pdok.nl/lv/bgt/ogc/v1/collections/put?f=json" -H "accept: */*"
curl -X "GET" "https://api.pdok.nl/lv/bgt/ogc/v1/collections/put?f=json" -H "accept: */*"
```

Response body:
Expand Down Expand Up @@ -303,6 +303,6 @@ Voeg de parameter toe voor het crs en de URL van RD/Amersfoort toe. Kijk in de A
}
...

## Resumé
## Samenvatting

Je hebt in de oefeningen hierboven de OpenAPI-specificatie opgevraagd waarmee je zelf API calls kunt samenstellen en voorbeelden van calls en responses kunt bekijken. Daarna heb je informatie over collecties opgevraagd en de items in die collecties opgevraagd. En dat allemaal in de commandline. Je kunt je voorstellen dat je dit soort calls in elk soort applicatie zou kunnen integreren. Hopelijk geeft dit onderdeel een goede basis voor de volgende onderdelen.
4 changes: 2 additions & 2 deletions docs/features/Casus - Analyseer data met OGC API - Features met Python.md
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Casus - Analyseer data met OGC API - Features in Python
Tot nu toe hebben we vooral gekeken naar visualisatie van data. Het bekijken van geodata is maar slechts één aspect van het gebruiken van geodata. In dit onderdeel analyseer je data zodat op basis van bestaande data nieuwe informatie ontstaat. Je doet dit met behulp van verschillende pythonlibraries in een notebook. En aan de hand van een casus.
Tot nu toe hebben we vooral gekeken naar visualisatie van data. Het bekijken van geodata is maar slechts één aspect van het gebruiken van geodata. In dit onderdeel analyseer je data zodat op basis van bestaande data nieuwe informatie ontstaat. Je doet dit met behulp van verschillende Python libraries in een notebook. En aan de hand van een casus.

Eerst introduceren we de casus waaraan je gaat werken. Daarna laadt je de data uit OGC API - Features in python. Vervolgens voer je de analyse uit. En tot slot maak je een visualisatie van de resultaten van je analyse.
Eerst introduceren we de casus waaraan je gaat werken. Daarna laad je de data uit OGC API - Features in python. Vervolgens voer je de analyse uit. En tot slot maak je een visualisatie van de resultaten van je analyse.

!!! warning "TO DO"

Expand Down
2 changes: 1 addition & 1 deletion docs/features/Introductie.md
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,6 @@ Eerst leer je met behulp van de API landing page wat de verschillende mogelijkhe

- Internetbrowser
- Commandline
- Curl
- curl
- Code-editor
- MapLibre (JavaScript)
Loading