with the newest osm-carto release capitals are rendered with a two-ring dot. A good reason to clean the key capital=* up! Yesterday I started to clean up all cities which where tagged as capital=yes but are not the national capitals. I changed all cities (around 40) except in Russia. In Russia most capitals of federal subjects are tagged as capital=yes, admin_level=4 - currently 61 nodes (http://overpass-turbo.eu/s/iWB).
Do you agree to get them tagged to capital=4, admin_level=4? This would not change the rendering of the cities since the “placenames-medium” has the SQL-query capital = ‘4’ OR (capital = ‘yes’ AND admin_level = ‘4’).
Yes, the best and future-proof way is tagging capitals this way. But relation handling is difficult and at least for the national (admin_level=2) capitals the on-node approach should currently also be done.
If everything at admin_level 4/6 (except Moscow) will be tagged this way, then there won’t be country-scale relations (relatively easy to process). It will be easier in the future (everything fits RAM).
I don’t think we need to tag “capitals” using multiple tagging approaches at once:
We may talk about it when the database reload is finished. The admin_centre role will then be available.
My request is no tagging for the renderer (the renderer supports the current russian approach) but the unification of the capital=yes tagging. Currently in order to find the national capitals without relations the keys capital and admin_level have to be queried. But the usage of admin_level together with capital=yes has semantic problems which I detailed on the tagging mailing list.
I have the impression that capital=* tagging seems not to interest many since relations are the future, so there might be no reason to keep the special Russian tagging?
After some time has passed I try to summarize your positions:
Nobody seemed to like capital=* on your various lower-level capitals. The usage of relations was preferred.
There was no argument for capital=yes and against using capital=3 or =4 or =6 based on (technical) tagging discussion.
So I checked if your relations are complete: I used overpass to get all capital=yes which are not admin_level=2 (http://overpass-turbo.eu/s/j86) and checked in JOSM. All of them had role admin_centre.
So the best solutions seem to be to remove all capital=yes tags in from Russian capitals (except Moscow)
Yes, because the developers of osm-carto style made a mistake with SQL when developing the rendering for capitals. It will be fixed soon in a few days.
The complexity of the current data lead to complex SQL. When implementing my proposals here the SQL can get simpler.
This is because capital=yes occurs 100 times in the world and overpass makes an index over it as rare tag automatically AFAIK. It doesn’t have an index on rare roles AFAIK.