Problem Description
When importing 3DBAG into 3DCityDB, the dataset assigns all thematic attributes to the Building object (objectclass_id = 901), while all geometries (including roofs, walls, and ground surfaces) are linked to BuildingPart objects (objectclass_id = 902).
This creates a structural mismatch:
- Thematic attributes belong to Building (901)
- Geometry and surfaces belong to BuildingPart (902)
In the current CityDB schema, there is no direct parent–child link connecting a BuildingPart to its corresponding Building. As a result:
- It becomes impossible to retrieve thematic attributes for a BuildingPart using only its
feature_id.
- Attribute extraction workflows break because the pipeline expects the geometry and thematic attributes to belong to the same feature.
- For 3DBAG specifically, the reconstruction logic attaches LoD2.1/LoD2.2 geometry to BuildingPart, but all BAG/3DBAG metadata remains attached to Building.
Impact
- Attribute extraction fails for 3DBAG because pipeline operations depend on matching geometry to the correct thematic record.
- Any downstream process requiring height, construction year, or BAG metadata cannot be linked to the geometry of the building.
- This breaks consistency with other datasets (DE/AT/CZ) where building geometry is attached directly to the Building object.
What Needs to Be Solved
We need a reliable way to:
- Identify which
BuildingPart belongs to which Building.
- Propagate or map thematic attributes from Building → BuildingPart.
- Ensure the pipeline can extract both attributes and geometry using a single
feature_id.
Problem Description
When importing 3DBAG into 3DCityDB, the dataset assigns all thematic attributes to the Building object (
objectclass_id = 901), while all geometries (including roofs, walls, and ground surfaces) are linked to BuildingPart objects (objectclass_id = 902).This creates a structural mismatch:
In the current CityDB schema, there is no direct parent–child link connecting a
BuildingPartto its correspondingBuilding. As a result:feature_id.Impact
What Needs to Be Solved
We need a reliable way to:
BuildingPartbelongs to whichBuilding.feature_id.