Is the overriding occupancies rule working well?
Going through the Attica OBM buildings, I've found the following cases that might require a revision:
OSM ID 755328022 and other religious gathering buildings
In OSM, ID 755328022 is tagged as amenity:place_of_worship
. According to building_and_PoIs_tags.csv, this is ASS1
and according to overriding_occupancies.csv, ASS1
is an overriding occupancy and thus ASS1
should be the final result, but it is currently UNK
. I imagine it ends up being UNK
because the polygon is enclosed by way 165380391, which has a landuse:residential
tag, but I do not understand why the overriding occupancies rule hasn't taken over and led to ASS1
being the result. The same happens with OSM ID 498881745 (also in the figure above). Interestingly, OSM ID 498881711, which is outside of the land use polygon, does end up being ASS1
.
OSM ID 755271021 and 755271022 (schools)
In the same village as the previous case, there are these two school buildings (EDU2
) that also end up with occupancy UNK
. They are also enclosed by the same landuse:residential
polygon. EDU2
is also one of the overriding occupancies in overriding_occupancies.csv.
OSM ID 327797564 and 327742459: airport terminals
These buildings have the tag aeroway:terminal
. According to building_and_PoIs_tags.csv, this is COM10
, i.e. "airport". According to overriding_occupancies.csv, COM10
is an overriding occupancy and thus COM10
should be the final result, but it is currently COM
. These buildings also have the tag building:transportation
which, according to building_and_PoIs_tags.csv is COM8
or COM9
. However, COM10
is listed before COM9
and COM8
in overriding_occupancies.csv and it thus should not matter that these tags also exist, the result should still be COM10
.
OSM ID 225466293
osm_replication=> SELECT tags FROM osm_building_polygons WHERE osm_id = 225466293;
tags
-------------------
"building"=>"yes"
(1 row)
osm_replication=> SELECT os.key, os.type FROM osm_building_polygons AS obp INNER JOIN osm_lands AS os ON ST_Contains(os.geometry, obp.geometry) WHERE obp.osm_id = 225466293;
key | type
---------+--------
landuse | retail
(1 row)
osm_replication=> SELECT os.key, os.type FROM osm_building_polygons AS obp INNER JOIN osm_spots AS os ON ST_Intersects(obp.geometry, os.geometry) WHERE obp.osm_id = 225466293;
key | type
---------+------------
amenity | pharmacy
shop | electrical
shop | optician
amenity | cafe
amenity | police
(5 rows)
amenity:police
should lead to GOV2
, which is an overriding occupancy according to overriding_occupancies.csv. Instead, the final result is UNK
.
OSM ID 505569764, hospital
osm_replication=> SELECT tags FROM osm_building_polygons WHERE osm_id = 505569764;
tags
-------------------
"building"=>"yes"
(1 row)
osm_replication=> SELECT os.key, os.type FROM osm_building_polygons AS obp INNER JOIN osm_lands AS os ON ST_Contains(os.geometry, obp.geometry) WHERE obp.osm_id = 505569764;
key | type
---------+-------------
landuse | residential
amenity | hospital
(2 rows)
osm_replication=> SELECT os.key, os.type FROM osm_building_polygons AS obp INNER JOIN osm_spots AS os ON ST_Intersects(obp.geometry, os.geometry) WHERE obp.osm_id = 505569764;
key | type
-----+------
(0 rows)
amenity:hospital
should lead to COM4
, which is an overriding occupancy according to overriding_occupancies.csv. Instead, the final result is UNK
.
obm_buildings=> SELECT occupancy FROM obm_buildings WHERE osm_id = 505569764;
occupancy
-----------
UNK
Note: In the images "old" refers to the occupancy in the 2019 database, "new" refers to the occupancy in 2022.