Am I misunderstanding how labels work for boundaries? I was expecting the name of the boundary to show up at the centroid of the area, or at the location of the label within the relation.
It is getting rendered on the map, both on the border and as a label. It might have just still been rendering after your edits if you didn’t wait long enough.
Weird, I still don’t see the label. I can see the border (I was able to see that before), but I can’t see the label. I’ve force-refreshed at various zoom levels too.
I’m not sure, but you can try force refreshing the map view with ctrl + shift + R or ctrl + F5 and see if the label that you see remains. A screenshot of what you’re seeing could also be helpful.
You have deleted all the information from the label node. There is nothing there to render anymore. The “label” member must be a fully tagged place node. It is not a simple position place holder.
Ah. The wiki wasn’t clear about that (as seen here under “label”).
What’s also inconsistent about that is that the name of the boundary appears on outer (from them being on the boundary relation itself) despite it not being present on that member. So I figured that if it applied tags from the boundary relation to the outer member, then it would also apply them to the label member.
This is a feature of how multipolygons corresponding to closed areas (such as boundaries) are imported into the database for rendering - they are converted into simple polygons and the tags of multipolygon are propagated to the component ways. But this only applies to the closed way feature, and not to any nodes etc. that also happen to be in the relation.
The node you have as role “label” in that relation is missing any sort of tagging. I’d probably tag the node as follows (keeping it in its current relation and role) based on my understanding of how wards work in British Columbia and my understanding of the Maple Ridge area:
What information should go on the parent relation, and what information should go on the label member? The relation needs the type=boundary, boundary=administrative, admin_level=<admin_level>, name=<name>, but what about alternative names, Wikidata, etc? Should that information only go on the label node? Should it be duplicated to both?
I tend to go with boundary=administrative on the boundary ways, the admin level and name=* on the relation, and the place=* and name=* on the label node.
Collective attributes of the boundary,.e.g. wikidata, are best on the relation, which “is” the boundary - the label node is secondary. I would avoid duplicating.
As relations IDs are pretty stable, you can also add these to wikidata (P402).
The problem is, as you’ve noticed, the ambiguous definition of the label role in the wiki. On one hand it is described simply as a node to flag to the renderer where to put a label (in which case the node would not need tags at all). This is quite unlike other areas / multipolygons, which do not have “label position hints”. Carto (and most other renderers?) will simply ignore the label (not least because most boundaries are labelled on their edges).
On the other, it is suggested to use a place node, which is a different beast. This involves using an existing place e.g. place=city. In this case, the label is not actually doing anything in the relation, since Carto etc. are applying their normal rules about rendering a place node.