Looking for an OSM building data service

Why do you want to forbid that? What with software with don’t support building parts?

And you end up with one building created with multiple parts and all of them tagged building=yes. So how to easily count building in city?

building=yes – it is building outline mostly for 2d render.
building:part=yes – it is part of building and it is mostly for 3d render

There are many database shames. Some of them are optimized for some task like routing or 2d render. So if you want to add 3d you need to extend your database schema to support relations.

That’s true, and in my opinion it is an argument that a debate on omitting the height tag from outlines may be focusing on the wrong problem: Avoiding the need to associate building parts with their buildings.

A lot of these tags that are “inherited” from the outline may not matter for WikiMiniAtlas right now, or at all - such as roof shapes, colors or materials. But others may very well matter. As one example, if you ever want to highlight the entire building the current Wikipedia article is about - instead of just its 2D footprint - then you will need the wikipedia tag from the building outline for that.

I think as a short-term solution, Dschwen’s current approach to omit buildings with no height is fine because de facto it works most of the time. But to get high-quality results, it would be far preferable to find a solution for creating that association.

I agree with the conclusion that that a database designed for 2D rendering may not be really well suited for the use case.

However, the relation alone is not a perfect solution with real-world data: The majority of buildings mapped with building parts today does not use the relation. We have 23 274 building:part=* ways and only 2 790 members with “part” role or empty role (some of which are probably something else, but it may serve as an upper bound for the number of building parts in relations).

Because height currently is changed in building:part even though it is set on building=yes! I don’t know of any other property that is (ab)used in this way.

I don’t want to “forbid” that (well, I would if I could :wink: ), I’m suggesting to leave out the height tag on building=yes elements. What software does not support building parts anyways? What is there not to support?! How hard could it possibly be to consider building:part elements if you can already process building=yes elements?

No. What? No! Absolutely not. How did you read that into my comments? Why would I want to tag all building:parts with building=yes?

Yes, sure, ok. Perfect argument for dropping height from building=yes. No 2D rendering needs height!