# EMODnet (Europese zeedata)

Het Europese netwerk voor zeedata in zeven thema's: diepte, geologie, fysica, chemie, biologie, zeebodemleefgebieden en menselijk gebruik. Voor de Nederlandse Noordzee vind je hier windparken, kabels, leidingen, scheepvaartdichtheid, wrakken en de diepte, als kaartlaag (WMS) en als data (WFS).

- Uitgever: European Marine Observation and Data Network
- Gebied: Europa · Laagste detail: object (windpark, kabel) of rastercel (~125 meter)
- Periode: verschilt per laag, bv. windparken sinds 2014 bijgehouden · Ververst: jaarlijks
- Toegang: Open · Licentie: CC BY 4.0 (tenzij anders vermeld; check de oorspronkelijke bron)
- Koppelsleutels: coördinaten (WGS84), land (country)
- Status: ok (2026-07-13) · metadata windparken (Human Activities)
- URL: https://emodnet.ec.europa.eu

## Wat kun je ermee?
- **Windparken op de Nederlandse Noordzee.** Volgens EMODnet draaien er in Nederland 12 windparken op zee met samen 4.758,5 MW en 671 turbines. Vijf parken (3.556 MW) zijn in aanbouw en twintig gepland (laag windparken, peildatum metadata juli 2026).
- **Hoe diep is het hier?.** Eén aanroep geeft de diepte op een punt. Op 4,0° oost, 52,6° noord (voor de kust van Noord-Holland) is het gemiddeld 26,5 meter.
- **Drukte op zee naast de windparken.** Leg de laag scheepvaartdichtheid (vesseldensity) over de windparken en de kabels. Waar kruisen scheepvaartroutes en geplande parken?
- **Afstand tot de kust.** Elk windpark heeft een veld dist_coast in meters. Zet de Nederlandse parken naast die van Duitsland, Denemarken en het Verenigd Koninkrijk.

## Zo verwerk je het
1. **Kies het juiste thema-portaal.** Elk thema heeft een eigen server, bv. ows.emodnet-humanactivities.eu (windparken, kabels, scheepvaart) en ows.emodnet-bathymetry.eu (diepte). De documentatie noemt alle WMS-, WFS- en WCS-adressen.
   `https://emodnet.ec.europa.eu/en/emodnet-web-service-documentation`
2. **Bekijk de lagen.** De WFS van Human Activities noemt 161 lagen (de WMS 208, 16 okt 2026), van windparken (emodnet:windfarmspoly) tot kabels van Rijkswaterstaat (emodnet:pcablesrijks).
   `https://ows.emodnet-humanactivities.eu/wfs?service=WFS&request=GetCapabilities&version=2.0.0`
3. **Filter op Nederland.** GeoServer kent CQL_FILTER: country='Netherlands'. Met propertyName kies je de velden; outputFormat=csv of application/json.
   `https://ows.emodnet-humanactivities.eu/wfs?service=WFS&version=2.0.0&request=GetFeature&typeNames=emodnet:windfarmspoly&outputFormat=csv&CQL_FILTER=country='Netherlands'&propertyName=name,status,power_mw,n_turbines,year`
4. **Diepte op een punt.** De REST-dienst van Bathymetry geeft minimum, maximum en gemiddelde diepte (in meters, negatief = onder zeeniveau) en de bron van de meting.
   `https://rest.emodnet-bathymetry.eu/depth_sample?geom=POINT(4.0%2052.6)`

## Interessante koppelingen
- Hoeveel wind waait er bij de parken? → [knmi-daggegevens](https://www.opendataindex.nl/bron/knmi-daggegevens.md) via datum en locatie. Neem een kuststation van het KNMI, bv. De Kooy (235) of Hoek van Holland (330), en zet de windsnelheid naast de vermogens van de parken.

## Vergelijkbare bronnen
- [Noordzeeloket (Rijksoverheid)](https://www.noordzeeloket.nl): Het portaal van de Nederlandse overheid voor de Noordzee, met het Programma Noordzee en windenergie op zee. Wel de plannen en besluiten, geen Europese datalagen.
- [copernicus-sentinel2](https://www.opendataindex.nl/bron/copernicus-sentinel2.md): Satellietbeelden van zee en kust; geen diepte, kabels of vergunningen.

## Waar je op moet letten
- **Status loopt achter op de praktijk.** De laag windparken wordt één keer per jaar bijgewerkt (veld updateyear). Een park dat net open is kan nog op 'Construction' staan. Controleer recente parken bij Noordzeeloket of de exploitant.
- **EMODnet verzamelt, maakt niet zelf.** De data komen van nationale instituten. De licentie is CC BY 4.0 tenzij anders vermeld, maar lees de metadata van de oorspronkelijke bron en vermeld die.
- **Elk thema een andere server.** Bathymetry, Human Activities, Geology en de andere thema's hebben elk hun eigen adres, lagen en naamgeving. Begin bij de documentatiepagina.
- **Diepte is een gemiddelde per cel.** Het diepteraster heeft cellen van ongeveer 125 meter. Voor scheepvaart of bouw gebruik je de officiële zeekaarten.

## API (OGC WFS 2.0.0)

- Basis: https://ows.emodnet-humanactivities.eu/wfs
- Toegang: Geen sleutel. Kosten: NONE; gebruiksvoorwaarden: NONE. (uit de beschrijving)
- Formaten: application/gml+xml; version=3.2, GML2, SHAPE-ZIP, application/json, csv, gml3, gml32, json, text/csv, text/xml; subtype=gml/2.1.2, text/xml; subtype=gml/3.1.1, text/xml; subtype=gml/3.2
- Omvang: 600 objecten in emodnet:windfarmspoly (getest)
- Filteren: OGC Filter Encoding (FES 2.0); PropertyIsLessThan, PropertyIsGreaterThan, PropertyIsLessThanOrEqualTo, PropertyIsGreaterThanOrEqualTo, PropertyIsEqualTo, PropertyIsNotEqualTo, PropertyIsLike, PropertyIsBetween, PropertyIsNull, PropertyIsNil, Disjoint, Equals, DWithin, Beyond, Intersects, Touches, Crosses, Within, Contains, Overlaps, BBOX, After, Before, Begins, BegunBy, TContains, During, TEquals, TOverlaps, Meets, OverlappedBy, MetBy, EndedBy

### Endpoints
- `GET ?request=GetCapabilities`: beschrijving van de dienst
- `GET ?request=DescribeFeatureType`: velden van een laag (XSD)
- `GET ?request=GetFeature`: de objecten zelf, met geometrie
- `GET ?request=GetPropertyValue`: alleen de waarden van één veld
- `GET ?request=ListStoredQueries`: opgeslagen zoekvragen
- `GET ?request=DescribeStoredQueries`: uitleg bij opgeslagen zoekvragen
- `GET ?request=CreateStoredQuery`: CreateStoredQuery
- `GET ?request=DropStoredQuery`: DropStoredQuery
- `GET ?request=LockFeature`: LockFeature
- `GET ?request=GetFeatureWithLock`: GetFeatureWithLock
- `GET ?request=Transaction`: Transaction

### Parameters
- `typeNames`: welke laag: emodnet:activelicenses, emodnet:advisorycouncils, emodnet:pelagicstocks, emodnet:aquaculture, emodnet:baltic, emodnet:blacksea, emodnet:longdistancefleet, emodnet:market, emodnet:mediterranean, emodnet:northsea, emodnet:northwesternwaters, emodnet:outermostregions, emodnet:southwesternwaters, emodnet:aggregateareas, emodnet:aggregates, emodnet:fishingbeamtrawls, emodnet:fishingbottomottertrawls, emodnet:fishingbottomseines, emodnet:fishingdredges, emodnet:fishingpelagic, emodnet:fishingstaticgears, emodnet:fishingsubsurface, emodnet:fishingsurface, emodnet:barcelona, emodnet:hydrocarbons, emodnet:bucharest, emodnet:desalination, emodnet:dischargepoints, emodnet:dredgespoil, emodnet:dredgespoilpoly, emodnet:dredging, emodnet:munitions, emodnet:munitionspoly, emodnet:emodnetmarinas, emodnet:emeraldnetwork, emodnet:faoareas_old, emodnet:fao_areas, emodnet:finfish, emodnet:fishsales, emodnet:fishsalesbyspecies, emodnet:divisioncatches, emodnet:majorcatches, emodnet:subareacatches, emodnet:subdivisioncatches, emodnet:subunitcatches, emodnet:divisioncatchesbygroup, emodnet:majorcatchesbygroup, emodnet:subareacatchesbygroup, emodnet:subdivisioncatchesbygroup, emodnet:subunitcatchesbygroup, emodnet:divisioncatchesbycountry, emodnet:majorcatchesbycountry, emodnet:subareacatchesbycountry, emodnet:subdivisioncatchesbycountry, emodnet:subunitcatchesbycountry, emodnet:divisioneffort, emodnet:gfcmsubareaeffort, emodnet:majoreffort, emodnet:subareaeffort, emodnet:subdivisioneffort, emodnet:subuniteffort, emodnet:divisioneffortbycountryv1, emodnet:divisioneffortbycountry, emodnet:gfcmsubareaeffortbycountry, emodnet:gfcmsubareaeffortbycountryv1, emodnet:majoreffortbycountryv1, emodnet:majoreffortbycountry, emodnet:subareaeffortbycountryv1, emodnet:subareaeffortbycountry, emodnet:subdivisioneffortbycountryv1, emodnet:subdivisioneffortbycountry, emodnet:subuniteffortbycountryv1, emodnet:subuniteffortbycountry, emodnet:divisioneffortbyvesseltypev1, emodnet:divisioneffortbyvesseltype, emodnet:gfcmsubareaeffortbyvesseltype, emodnet:gfcmsubareaeffortbyvesseltypev1, emodnet:majoreffortbyvesseltypev1, emodnet:majoreffortbyvesseltype, emodnet:subareaeffortbyvesseltypev1, emodnet:subareaeffortbyvesseltype, emodnet:subdivisioneffortbyvesseltypev1, emodnet:subdivisioneffortbyvesseltype, emodnet:subuniteffortbyvesseltypev1, emodnet:subuniteffortbyvesseltype, emodnet:divisioneffortv1, emodnet:gfcmsubareaeffortv1, emodnet:majoreffortv1, emodnet:subareaeffortv1, emodnet:subdivisioneffortv1, emodnet:subuniteffortv1, emodnet:fishquotas, emodnet:fishquotas240408, emodnet:fishquotas240408bylevel, emodnet:fishquotasbylevel, emodnet:fishquotas240408byspecies, emodnet:fishquotasbyspecies, emodnet:freshwater, emodnet:helcom, emodnet:heritageshipwrecks, emodnet:icesareas, emodnet:intconventions, emodnet:lighthouses, emodnet:reportingunits, emodnet:mspspatialplan, emodnet:mspzoningpolybyusefunction, emodnet:mspzoningpoly, emodnet:mspzoninglinebyusefunction, emodnet:mspzoningline, emodnet:mspzoninglocsbyusefunction, emodnet:mspzoninglocs, emodnet:macroalgae, emodnet:portgoods, emodnet:portlocations, emodnet:portpassengers, emodnet:portvessels, emodnet:portvesselsbytonnage, emodnet:portvesselsbytype, emodnet:microalgae, emodnet:militaryareas, emodnet:militaryareaspoly, emodnet:cddaareas, emodnet:cddalocations, emodnet:nationallydesignatedlocs, emodnet:nationallydesignatedareas, emodnet:natura2000areas, emodnet:nuclear, emodnet:tourismlau, emodnet:ospar, emodnet:oenergy, emodnet:oenergytests, emodnet:platforms, emodnet:osmmarinaspoly, emodnet:osmmarinas, emodnet:pipelines, emodnet:pcablesbshcontis, emodnet:pcablesshom, emodnet:pcablesrijks, emodnet:pcablesnve, emodnet:marineprotectedareas, emodnet:shellfishlics, emodnet:shellfish, emodnet:shellfishwfdareas, emodnet:spirulina, emodnet:bathingwaters, emodnet:bshcontiscables, emodnet:cicacables, emodnet:shomcables, emodnet:sigcables, emodnet:maltacables, emodnet:rijkscables, emodnet:ukfibrecables, emodnet:tourismnuts3, emodnet:treatmentplants, emodnet:unescowhl, emodnet:wasteatports, emodnet:windfarms, emodnet:windfarmspoly, emodnet:wdpaareas, emodnet:wdpalocations, emodnet:wwshipwrecks (uit de beschrijving)
- `outputFormat`: bv. application/json voor GeoJSON (uit de beschrijving)
- `srsName`: projectie, bv. EPSG:4326 voor webkaarten (standaard EPSG:4326) (uit de beschrijving)
- `count / startIndex`: pagineren (uit de beschrijving)
- `filter`: FES-XML-filter op velden of geometrie (uit de beschrijving)
- `bbox`: rechthoek in de gekozen projectie (platform)

### Velden (13)
`country` string, `n_turbines` int, `power_mw` decimal, `status` string, `type_inst` string, `updateyear` string, `year` string, `dist_coast` decimal, `area_sqkm` decimal, `notes` string, `shape_leng` decimal, `shape_area` decimal, `the_geom` geometrie

### Limieten en valkuilen
- Maximaal 1.000.000 objecten per verzoek (CountDefault). (uit de beschrijving)
- Pagineren kan: count en startIndex (ImplementsResultPaging). (uit de beschrijving)
- De hele laag windparken (600 objecten in Europa) komt in één verzoek; pagineren is voor deze laag niet nodig. (getest)
- Filteren gaat het makkelijkst met de GeoServer-parameter CQL_FILTER, bv. country='Netherlands' AND status='Production' (12 parken, 15 okt 2026). (getest)
- Met propertyName zonder the_geom komt geometry: null terug: handig als je alleen de tabel wilt. (getest)
- outputFormat=csv werkt ook en geeft een kolom FID plus de gekozen velden. (getest)
- dist_coast is in meters, power_mw in megawatt. Statussen: Production, Construction, Approved, Planned (en in andere landen ook Dismantled en Test site). (uit de beschrijving)

### Voorbeeld
```
https://ows.emodnet-humanactivities.eu/wfs?service=WFS&version=2.0.0&request=GetFeature&typeNames=emodnet:windfarmspoly&outputFormat=application/json&count=2&CQL_FILTER=country='Netherlands'%20AND%20status='Production'&propertyName=name,status,power_mw,n_turbines,year
```

## Zo haal je het op

### curl
```bash
curl "https://ows.emodnet-humanactivities.eu/wfs?service=WFS&version=2.0.0&request=GetFeature&typeNames=emodnet:windfarmspoly&outputFormat=csv&CQL_FILTER=country='Netherlands'&propertyName=name,status,power_mw,n_turbines,year"
```

### python
```python
import requests

r = requests.get("https://ows.emodnet-humanactivities.eu/wfs", params={
    "service": "WFS", "version": "2.0.0", "request": "GetFeature",
    "typeNames": "emodnet:windfarmspoly", "outputFormat": "application/json",
    "CQL_FILTER": "country='Netherlands' AND status='Production'",
    "propertyName": "name,power_mw,n_turbines"}).json()
print(r["numberMatched"], "parken,", sum(f["properties"]["power_mw"] for f in r["features"]), "MW")
```


## Wat er allemaal in zit: 1.891 kaartlagen

Alle lagen uit de kaart- en objectdiensten van EMODnet, per thema, elke nacht opgehaald. Geologie en fysica ontbreken: hun servers verbieden scripts in robots.txt.

- Soorten: kaartlaag 1.891
- Laatst gewijzigd: 2020-01-31
- Met een API-aanroep op de datasetpagina: 1.891
- Zoeken: https://www.opendataindex.nl/api/catalogus/emodnet?q=… of de MCP-functie zoek_datasets met herkomst=emodnet
- Elke rij heeft een eigen pagina: https://www.opendataindex.nl/dataset/emodnet/<sleutel>

### Mappen
- Biologie (Biology) (122): Data products (50), New data products (27), Occurrence data (45)
- Chemie (Chemistry) (1.106): Contaminants (94), Eutrophication (1012)
- Diepte (Bathymetry) (16)
- Menselijk gebruik (Human Activities) (209)
- Zeebodemleefgebieden (Seabed Habitats) (438): General datasets and products (280), Individual habitat map and model datasets (158)

## Voorbeelden met echte cijfers (2)

Per voorbeeld de bevinding, de peildatum en de aanroep die precies deze cijfers ophaalt.

- **Windparkgebieden in het Nederlandse deel van de Noordzee naar status: gepland is het grootste deel, 51% in oktober 2026** (oktober 2026). Tabel emodnet:windfarmspoly. [Voorbeeld](https://www.opendataindex.nl/voorbeeld/emodnet-windparken-status)
  - `https://ows.emodnet-humanactivities.eu/wfs?service=WFS&version=2.0.0&request=GetFeature&typeNames=emodnet:windfarmspoly&outputFormat=application/json&CQL_FILTER=country%3D'Netherlands'&propertyName=name,status,power_mw,n_turbines,year,updateyear`
- **Windparken op zee in productie (Nederlands deel Noordzee) naar vermogen: het meest Hollandse Kust (Zuid) (1.540 megawatt), dan Hollandse Kust (Noord) en Borssele Kavel IV** (oktober 2026). Tabel emodnet:windfarmspoly. [Voorbeeld](https://www.opendataindex.nl/voorbeeld/emodnet-windparken-vermogen)
  - `https://ows.emodnet-humanactivities.eu/wfs?service=WFS&version=2.0.0&request=GetFeature&typeNames=emodnet:windfarmspoly&outputFormat=application/json&CQL_FILTER=country%3D'Netherlands'&propertyName=name,status,power_mw,n_turbines,year,updateyear`
