{ "cells": [ { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Example of DOV search methods for generic WFS layers" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "[](https://mybinder.org/v2/gh/DOV-Vlaanderen/pydov/master?filepath=docs%2Fnotebooks%2Fsearch_generic_wfs.ipynb)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Use cases explained below\n", "* Get data in a bounding box\n", "* Get data with specific properties\n", "* Get data in a bounding box based on specific properties\n", "* Select data and return a subset of columns\n", "* Using sorting and limiting to find the most recent data\n", "* Combining attribute queries to limit your results" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "%matplotlib inline\n", "import inspect, sys\n", "import warnings; warnings.simplefilter('ignore')" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# check pydov path\n", "import pydov" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "Next to the predefined datatypes from pydov, one can also query any WFS layer available in DOV using pydov. This allows for the same workflow and search methods to be used to query all vectordata we publish. To check which layers are available, consult our [metadata catalogue](https://www.dov.vlaanderen.be/geonetwork)." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Get information about the datatype" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "When instantiating a `WfsSearch` instance, one has to provide the workspace-qualified layer name of the WFS service one would like to query:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "from pydov.search.generic import WfsSearch\n", "wfs_search = WfsSearch('pfas:pfas_analyseresultaten')" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "Once instantiated, one can request a description of the dataset:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'PFAS analyseresultaten aangeleverd door bodemsaneringsdeskundigen en opgenomen in de OVAM bodemdatabank.'" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "wfs_search.get_description()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "And a list of available fields:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "id\n", "opdracht\n", "pfasdossiernr\n", "profielnaam\n", "top_in_m\n", "basis_in_m\n", "jaar\n", "datum\n", "parameter\n", "detectieconditie\n", "meetwaarde\n", "meeteenheid\n", "medium\n", "profieltype\n", "plaatsing_profiel\n", "commentaar\n", "x_ml72\n", "y_ml72\n", "geom\n" ] } ], "source": [ "fields = wfs_search.get_fields()\n", "\n", "# print available fields\n", "for f in fields.values():\n", " print(f['name'])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Alternatively, you can list all the fields and their details by inspecting the `get_fields()` output or the search instance itself in a notebook:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", " \n", "
PFAS analyseresultaten aangeleverd door bodemsaneringsdeskundigen en opgenomen in de OVAM bodemdatabank.
id - id
opdracht - ID van het rapport in de OVAM databank waaruit het analyseresultaat afkomstig is
pfasdossiernr - ID van het dossier in de OVAM databank waarin het rapport (opdracht) is opgenomen
profielnaam - Verwijzing naar het profiel waaruit staal en analyseresultaat afkomstig is
top_in_m - De diepte t.o.v het maaiveld (top) van het geanalyseerde staal
basis_in_m - De diepte t.o.v het maaiveld (basis) van het geanalyseerde staal
jaar - Jaartal analyseresultaat
datum - Datum analyseresultaat
parameter - Geanalyseerde parameter
detectieconditie - <, >, =
meetwaarde - Meetwaarde geanalyseerde parameter
meeteenheid - Eenheid meetwaarde geanalyseerde parameter
medium - Medium waaruit de staalname afkomstig is
profieltype - Soort profiel
plaatsing_profiel - Datum plaatsing profiel
commentaar - optioneel commentaarveld
x_ml72 - X-coördinaat
y_ml72 - Y-coördinaat
geom - None
| \n", " | id | \n", "opdracht | \n", "pfasdossiernr | \n", "profielnaam | \n", "top_in_m | \n", "basis_in_m | \n", "jaar | \n", "datum | \n", "parameter | \n", "detectieconditie | \n", "meetwaarde | \n", "meeteenheid | \n", "medium | \n", "profieltype | \n", "plaatsing_profiel | \n", "commentaar | \n", "x_ml72 | \n", "y_ml72 | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "32784976 | \n", "13935544 | \n", "61823 | \n", "47 | \n", "0.0 | \n", "0.2 | \n", "2021 | \n", "2021-12-16 | \n", "HFPO-DA | \n", "< | \n", "1.0 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "Boring | \n", "2021-12-10 | \n", "\n", " | 143874.97 | \n", "217045.51 | \n", "
| 1 | \n", "32784977 | \n", "13935544 | \n", "61823 | \n", "47 | \n", "0.0 | \n", "0.2 | \n", "2021 | \n", "2021-12-16 | \n", "MePFOSAtotaal | \n", "< | \n", "0.5 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "Boring | \n", "2021-12-10 | \n", "\n", " | 143874.97 | \n", "217045.51 | \n", "
| 2 | \n", "32784978 | \n", "13935544 | \n", "61823 | \n", "47 | \n", "0.0 | \n", "0.2 | \n", "2021 | \n", "2021-12-16 | \n", "PFHpS | \n", "< | \n", "0.2 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "Boring | \n", "2021-12-10 | \n", "\n", " | 143874.97 | \n", "217045.51 | \n", "
| 3 | \n", "32784979 | \n", "13935544 | \n", "61823 | \n", "47 | \n", "0.0 | \n", "0.2 | \n", "2021 | \n", "2021-12-16 | \n", "4:2 FTS | \n", "< | \n", "0.2 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "Boring | \n", "2021-12-10 | \n", "\n", " | 143874.97 | \n", "217045.51 | \n", "
| 4 | \n", "32784980 | \n", "13935544 | \n", "61823 | \n", "47 | \n", "0.0 | \n", "0.2 | \n", "2021 | \n", "2021-12-16 | \n", "PFDA | \n", "< | \n", "0.2 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "Boring | \n", "2021-12-10 | \n", "\n", " | 143874.97 | \n", "217045.51 | \n", "
| \n", " | id | \n", "opdracht | \n", "pfasdossiernr | \n", "profielnaam | \n", "top_in_m | \n", "basis_in_m | \n", "jaar | \n", "datum | \n", "parameter | \n", "detectieconditie | \n", "meetwaarde | \n", "meeteenheid | \n", "medium | \n", "profieltype | \n", "plaatsing_profiel | \n", "commentaar | \n", "x_ml72 | \n", "y_ml72 | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "31063085 | \n", "13077062 | \n", "6180 | \n", "PB31 | \n", "0.2 | \n", "2.2 | \n", "2021 | \n", "2021-06-16 | \n", "PFDA | \n", "< | \n", "0.02 | \n", "µg/l | \n", "Grondwater | \n", "Peilbuis | \n", "NaN | \n", "\n", " | 237529.0 | \n", "204908.0 | \n", "
| 1 | \n", "31063205 | \n", "13077062 | \n", "6180 | \n", "108 | \n", "0.5 | \n", "0.7 | \n", "2021 | \n", "2021-06-01 | \n", "PFDA | \n", "< | \n", "0.20 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "Boring | \n", "2021-05-21 | \n", "\n", " | 237521.0 | \n", "204927.0 | \n", "
| 2 | \n", "31063324 | \n", "13077062 | \n", "6180 | \n", "109 | \n", "0.5 | \n", "0.7 | \n", "2021 | \n", "2021-05-28 | \n", "PFDA | \n", "< | \n", "0.20 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "Boring | \n", "2021-05-21 | \n", "\n", " | 237504.0 | \n", "204955.0 | \n", "
| 3 | \n", "31063593 | \n", "13077062 | \n", "6180 | \n", "PB32 | \n", "0.5 | \n", "2.5 | \n", "2021 | \n", "2021-06-16 | \n", "PFDA | \n", "< | \n", "0.02 | \n", "µg/l | \n", "Grondwater | \n", "Peilbuis | \n", "NaN | \n", "\n", " | 237506.0 | \n", "204991.0 | \n", "
| 4 | \n", "31151190 | \n", "13123519 | \n", "22248 | \n", "P101 | \n", "1.5 | \n", "3.5 | \n", "2021 | \n", "2021-06-30 | \n", "PFDA | \n", "< | \n", "1.00 | \n", "ng/l | \n", "Grondwater | \n", "Peilbuis | \n", "2021-06-11 | \n", "\n", " | 97442.0 | \n", "170962.0 | \n", "
| \n", " | id | \n", "opdracht | \n", "pfasdossiernr | \n", "profielnaam | \n", "top_in_m | \n", "basis_in_m | \n", "jaar | \n", "datum | \n", "parameter | \n", "detectieconditie | \n", "meetwaarde | \n", "meeteenheid | \n", "medium | \n", "profieltype | \n", "plaatsing_profiel | \n", "commentaar | \n", "x_ml72 | \n", "y_ml72 | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "32784980 | \n", "13935544 | \n", "61823 | \n", "47 | \n", "0.0 | \n", "0.2 | \n", "2021 | \n", "2021-12-16 | \n", "PFDA | \n", "< | \n", "0.2 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "Boring | \n", "2021-12-10 | \n", "\n", " | 143874.97 | \n", "217045.51 | \n", "
| 1 | \n", "32785041 | \n", "13935544 | \n", "61823 | \n", "44 | \n", "0.0 | \n", "0.2 | \n", "2021 | \n", "2021-12-16 | \n", "PFDA | \n", "< | \n", "0.2 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "Boring | \n", "2021-12-10 | \n", "\n", " | 143449.23 | \n", "217048.64 | \n", "
| 2 | \n", "32785070 | \n", "13935544 | \n", "61823 | \n", "PB7 | \n", "0.0 | \n", "0.0 | \n", "2022 | \n", "2022-01-18 | \n", "PFDA | \n", "< | \n", "1.0 | \n", "ng/l | \n", "Grondwater | \n", "Peilbuis | \n", "2021-12-10 | \n", "\n", " | 143622.88 | \n", "217056.85 | \n", "
| 3 | \n", "32785099 | \n", "13935544 | \n", "61823 | \n", "46 | \n", "0.0 | \n", "0.2 | \n", "2021 | \n", "2021-12-16 | \n", "PFDA | \n", "< | \n", "0.2 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "Boring | \n", "2021-12-10 | \n", "\n", " | 143747.63 | \n", "217023.63 | \n", "
| 4 | \n", "32785131 | \n", "13935544 | \n", "61823 | \n", "40 | \n", "6.1 | \n", "7.1 | \n", "2021 | \n", "2021-12-20 | \n", "PFDA | \n", "< | \n", "1.0 | \n", "ng/l | \n", "Grondwater | \n", "Peilbuis | \n", "2019-10-10 | \n", "\n", " | 143654.00 | \n", "217032.00 | \n", "
| \n", " | datum | \n", "x_ml72 | \n", "y_ml72 | \n", "parameter | \n", "detectieconditie | \n", "meetwaarde | \n", "meeteenheid | \n", "medium | \n", "
|---|---|---|---|---|---|---|---|---|
| 0 | \n", "2021-12-16 | \n", "143874.97 | \n", "217045.51 | \n", "HFPO-DA | \n", "< | \n", "1.0 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "
| 1 | \n", "2021-12-16 | \n", "143874.97 | \n", "217045.51 | \n", "MePFOSAtotaal | \n", "< | \n", "0.5 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "
| 2 | \n", "2021-12-16 | \n", "143874.97 | \n", "217045.51 | \n", "PFHpS | \n", "< | \n", "0.2 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "
| 3 | \n", "2021-12-16 | \n", "143874.97 | \n", "217045.51 | \n", "4:2 FTS | \n", "< | \n", "0.2 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "
| 4 | \n", "2021-12-16 | \n", "143874.97 | \n", "217045.51 | \n", "PFDA | \n", "< | \n", "0.2 | \n", "µg/kg ds | \n", "Vaste deel van de aarde | \n", "
| \n", " | id | \n", "opdracht | \n", "pfasdossiernr | \n", "profielnaam | \n", "top_in_m | \n", "basis_in_m | \n", "jaar | \n", "datum | \n", "parameter | \n", "detectieconditie | \n", "meetwaarde | \n", "meeteenheid | \n", "medium | \n", "profieltype | \n", "plaatsing_profiel | \n", "commentaar | \n", "x_ml72 | \n", "y_ml72 | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "49484617 | \n", "17945116 | \n", "108231 | \n", "PB2 | \n", "2.08 | \n", "2.78 | \n", "2026 | \n", "2026-01-16 | \n", "PFDS | \n", "< | \n", "10.0 | \n", "ng/l | \n", "Grondwater | \n", "Peilbuis | \n", "2025-10-10 | \n", "\n", " | 106744.0 | \n", "193702.0 | \n", "
| 1 | \n", "49484636 | \n", "17945116 | \n", "108231 | \n", "PB2 | \n", "2.08 | \n", "2.78 | \n", "2026 | \n", "2026-01-16 | \n", "\n", " | < | \n", "50.0 | \n", "ng/l | \n", "Grondwater | \n", "Peilbuis | \n", "2025-10-10 | \n", "\n", " | 106744.0 | \n", "193702.0 | \n", "
| 2 | \n", "49484643 | \n", "17945116 | \n", "108231 | \n", "PB2 | \n", "2.08 | \n", "2.78 | \n", "2026 | \n", "2026-01-16 | \n", "PFOStotaal | \n", "< | \n", "10.0 | \n", "ng/l | \n", "Grondwater | \n", "Peilbuis | \n", "2025-10-10 | \n", "\n", " | 106744.0 | \n", "193702.0 | \n", "
| 3 | \n", "49484621 | \n", "17945116 | \n", "108231 | \n", "PB2 | \n", "2.08 | \n", "2.78 | \n", "2026 | \n", "2026-01-16 | \n", "PFHxDA | \n", "< | \n", "10.0 | \n", "ng/l | \n", "Grondwater | \n", "Peilbuis | \n", "2025-10-10 | \n", "\n", " | 106744.0 | \n", "193702.0 | \n", "
| 4 | \n", "49484620 | \n", "17945116 | \n", "108231 | \n", "PB2 | \n", "2.08 | \n", "2.78 | \n", "2026 | \n", "2026-01-16 | \n", "PFDoDA | \n", "< | \n", "10.0 | \n", "ng/l | \n", "Grondwater | \n", "Peilbuis | \n", "2025-10-10 | \n", "\n", " | 106744.0 | \n", "193702.0 | \n", "
| \n", " | id | \n", "opdracht | \n", "pfasdossiernr | \n", "profielnaam | \n", "top_in_m | \n", "basis_in_m | \n", "jaar | \n", "datum | \n", "parameter | \n", "detectieconditie | \n", "meetwaarde | \n", "meeteenheid | \n", "medium | \n", "profieltype | \n", "plaatsing_profiel | \n", "commentaar | \n", "x_ml72 | \n", "y_ml72 | \n", "
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | \n", "32785070 | \n", "13935544 | \n", "61823 | \n", "PB7 | \n", "0.0 | \n", "0.0 | \n", "2022 | \n", "2022-01-18 | \n", "PFDA | \n", "< | \n", "1.0 | \n", "ng/l | \n", "Grondwater | \n", "Peilbuis | \n", "2021-12-10 | \n", "\n", " | 143622.88 | \n", "217056.85 | \n", "