diff --git a/assets/themes/bag_import/bag.json b/assets/themes/bag_import/bag.json
index 0188d59381..c551549d77 100644
--- a/assets/themes/bag_import/bag.json
+++ b/assets/themes/bag_import/bag.json
@@ -104,6 +104,40 @@
}
]
},
+ {
+ "id": "osm:adresses",
+ "name": "OSM Adresses",
+ "title": "OSM Adress",
+ "source": {
+ "osmTags": {
+ "and": [
+ "source=BAG",
+ "addr:city~*",
+ "addr:housenumber~*",
+ "addr:postcode~*",
+ "addr:street~*"
+ ]
+ },
+ "maxCacheAge": 0
+ },
+ "mapRendering": [
+ {
+ "label": {
+ "render": "
{addr:housenumber}
",
+ "condition": "addr:housenumber~*"
+ },
+ "location": [
+ "point",
+ "centroid"
+ ]
+ },
+ {
+ "width": {
+ "render": 1
+ }
+ }
+ ]
+ },
{
"id": "bag:pand",
"name": "BAG Buildings",
@@ -114,11 +148,7 @@
"source": {
"geoJson": "https://service.pdok.nl/lv/bag/wfs/v2_0?request=GetFeature&service=WFS&version=2.0.0&outputFormat=application%2Fjson%3B%20subtype%3Dgeojson&typeName=bag%3Apand&bbox={x_min}%2C{y_min}%2C{x_max}%2C{y_max}%2CCRS84&srsName=EPSG%3A4326",
"geoJsonZoomLevel": 18,
- "osmTags": {
- "and": [
- "identificatie~*"
- ]
- },
+ "osmTags": "identificatie~*",
"maxCacheAge": 0
},
"calculatedTags": [
@@ -135,7 +165,7 @@
"_bag_obj:start_date=feat.properties.bouwjaar",
"_osm_obj:id=feat.get('_overlaps_with_properties')?.id",
"_osm_obj:building=feat.get('_overlaps_with_properties')?.building",
- "_imported_osm_object_found=Number(feat.properties.identificatie)==Number(feat.get('_overlaps_with_properties')['ref:bag'])"
+ "_imported_osm_object_found:=Number(feat.properties.identificatie)==Number(feat.get('_overlaps_with_properties')['ref:bag'])"
],
"mapRendering": [
{
@@ -212,32 +242,49 @@
"id": "Overlapping building",
"render": "The overlapping
osm:buildings is a
{_osm_obj:building} and covers
{_overlap_percentage}% of the BAG building.
The BAG-building covers
{_reverse_overlap_percentage}% of the OSM building
BAG geometry:
{minimap(21, id):height:10rem;border-radius:1rem;overflow:hidden}OSM geometry:
{minimap(21,_osm_obj:id):height:10rem;border-radius:1rem;overflow:hidden} ",
"condition": "_overlaps_with!="
+ },
+ {
+ "id": "Building status",
+ "render": "The current building status is {status}"
+ },
+ {
+ "id": "Buidling function",
+ "render": "The current function of the building is {gebruiksdoel}"
}
]
},
{
"id": "bag:verblijfsobject",
- "name": "bag:verblijfsobject",
- "title": "bag:verblijfsobject - {identificatie}",
- "description": "Adressen vanaf het BAG register",
+ "name": "BAG Addresses",
+ "title": "BAG Address",
+ "description": "Adress information from the BAG register",
"source": {
"geoJson": "https://service.pdok.nl/lv/bag/wfs/v2_0?request=GetFeature&service=WFS&version=2.0.0&outputFormat=application%2Fjson%3B%20subtype%3Dgeojson&typeName=bag%3Averblijfsobject&bbox={x_min}%2C{y_min}%2C{x_max}%2C{y_max}%2CCRS84&srsName=EPSG%3A4326",
"geoJsonZoomLevel": 19,
- "osmTags": {
- "and": [
- "identificatie~*"
- ]
- },
+ "osmTags": "identificatie~*",
"maxCacheAge": 0
},
"calculatedTags": [
- "addr:housenumber:=`${feat.properties.huisnummer}${feat.properties.huisletter}${(feat.properties.toevoeging != '') ? '-' : ''}${feat.properties.toevoeging}`"
+ "_closed_osm_addr:=feat.closest('osm:adresses').properties",
+ "_bag_obj:addr:housenumber=`${feat.properties.huisnummer}${feat.properties.huisletter}${(feat.properties.toevoeging != '') ? '-' : ''}${feat.properties.toevoeging}`",
+ "_bag_obj:ref:bag=Number(feat.properties.identificatie)",
+ "_bag_obj:source:date=new Date().toISOString().split('T')[0]",
+ "_osm_obj:addr:city:=feat.get('_closed_osm_addr')['addr:city']",
+ "_osm_obj:addr:housenumber:=feat.get('_closed_osm_addr')['addr:housenumber']",
+ "_osm_obj:addr:postcode:=feat.get('_closed_osm_addr')['addr:postcode']",
+ "_osm_obj:addr:street:=feat.get('_closed_osm_addr')['addr:street']",
+ "_imported_osm_object_found:=(feat.properties.woonplaats==feat.get('_closed_osm_addr')['addr:city'])&&(feat.get('_bag_obj:addr:housenumber')==feat.get('_closed_osm_addr')['addr:housenumber'])&&(feat.properties.postcode==feat.get('_closed_osm_addr')['addr:postcode'])&&(feat.properties.openbare_ruimte==feat.get('_closed_osm_addr')['addr:street'])"
],
"mapRendering": [
{
"label": {
- "render": "{addr:housenumber}
",
- "condition": "addr:housenumber~*"
+ "render": "{_bag_obj:addr:housenumber}
",
+ "mappings": [
+ {
+ "if": "_imported_osm_object_found=true",
+ "then": "{_bag_obj:addr:housenumber}
"
+ }
+ ]
},
"location": [
"point",
@@ -251,9 +298,14 @@
}
],
"tagRenderings": [
+ {
+ "id": "Import button",
+ "render": "{import_button(osm:adresses, addr:city=$woonplaats; addr:housenumber=$_bag_obj:addr:housenumber; addr:postcode=$postcode; addr:street=$openbare_ruimte; ref:bag=$_bag_obj:ref:bag; source=BAG; source:date=$_bag_obj:source:date, Upload this adress to OpenStreetMap)}",
+ "condition": "_imported_osm_object_found=false"
+ },
{
"id": "Adress",
- "render": "{openbare_ruimte} {addr:housenumber}, {woonplaats} {postcode}"
+ "render": "{openbare_ruimte} {_bag_obj:addr:housenumber}, {woonplaats} {postcode}"
}
]
}